[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理怎样根据版本号提取压缩文件的名字?

有几个文件夹,平时使用的时候都是按照当前文件夹名称提取为压缩文件名称。
可否改成文件夹名称+文件夹内的一个版本号?

例如:
之前的是
D:/NAME/NVME
压缩文件名为 NVME.7z

现在想要的是
D:/NAME/NVME/dev/hkc/pug/10.2.3.4/*.*
可否把压缩文件的名字改为 NVME-10.2.3.4.7z
NVME文件夹下面肯定有一个文件夹是版本号,但是不确定在第几层。压缩包在D:/NAME这个路径

回复 2# WHY


    非常感谢。我去试试。

TOP

回复 2# WHY


    大神好,这个还是有点问题。

路径是这样的:

C:\Users\GOD\Desktop\diy\Physical\he\wuzhaoling\in\DRV\kente\mobe\ggilhg\45.32.3.3.23\*.*
想实现是的是在diy目录下直接打包成diy-45.32.3.3.23.7z

TOP

回复 5# WHY


    好的。谢谢。我试试看。

TOP

本帖最后由 帝尊 于 2023-3-7 12:35 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "7zPath=C:\Program Files\7-Zip\7z.exe"
  4. for /d %%D in (*) do (
  5.     for /d %%S in ("%%D\*") do (
  6.         echo %%~nS | findstr /r "^[0-9][0-9.]*$" >nul && (
  7.             set "zipFileName=%%~nD%%~nS.zip"
  8.             "!7zPath!" a -tzip "!zipFileName!" "%%D"
  9.         )
  10.     )
  11. )
  12. endlocal
复制代码
我自己写一个吧。

TOP

返回列表