标题: [文件操作] 批处理怎样把文件名中的版本号自动加一? [打印本页]
作者: leebilly007 时间: 2019-8-9 21:51 标题: 批处理怎样把文件名中的版本号自动加一?
文件名中的版本号自动加一
如下图所示:当前文件夹中有两个bin文件,一个名称为“ABCDEF.bin”,另一个为“UVWXYZ0001.bin”。
现在想在文件夹中加一个bat文件,完成以下功能:bat文件每次运行时,将“ABCDEF.bin”的名称替换为(rename)比“UVWXYZ0001.bin”文件名后四位数字大1的。
即下图的情况下运行bat之后,“UVWXYZ0001.bin”名称不变,“ABCDEF.bin”名称变为“ABC0002.bin”
我想达到的效果:我的另一个程序每次运行时会自动生成一个“ABCDEF.bin”,同时会自动执行此文件夹中的bat文件。
也就是说,最终效果是,我另一个程序,每运行一次,此文件夹中就会多一个bin文件,
且序号是递增的(每次是将“ABCDEF.bin”的名称替换为文件夹中带UVWXYZ开头的文件的后面序号最大的加1)。
谢谢!
作者: zaqmlp 时间: 2019-8-9 22:59
即下图的情况下运行bat之后,“UVWXYZ0001.bin”名称不变,“ABCDEF.bin”名称变为“ABC0002.bin”
图片中没看到“ABC0002.bin”,这是认真的吗- @echo off
- set info=互助互利,支付宝扫码头像,感谢赞助
- rem 有问题,可加QQ956535081及时沟通
- title %info%
- cd /d "%~dp0"
- set "last=UVWXYZ0000"
- for /f "delims=" %%a in ('dir /a-d/b "UVWXYZ????.bin" 2^>nul') do (
- set "last=%%~na"
- )
- set /a n=1%last:~-4%+1
- ren "ABCDEF.bin" "UVWXYZ%n:~-4%.bin"
- echo;%info%
- pause
复制代码
作者: leebilly007 时间: 2019-8-10 10:23
本帖最后由 leebilly007 于 2019-8-10 10:28 编辑
回复 2# zaqmlp
抱歉抱歉,笔误笔误,ABC0002应该为UVWXYZ0002
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |