运用场景:
现在有一批gz压缩文件如下:
我需要把它重命名成 xxx-xxxx-xxxx.gz 格式的名称。
xxx-xxxx-xxxx为原名中的数值编号
操作步骤:
for 循环 gz文件
获取除去后缀名的原名
截取数字编号 从第7位开始,截取13个字符
把_替换成-
重命名
代码如下:
@echo off&setlocal EnableDelayedExpansioncolor 0a
echo %date% %time%
echo rename file now......
set a=1
for /f "delims=" %%i in ('dir /b *.gz') do (
set "str=%%~nxi"
set "shortstr=!str:~7,13!"
set "replacestr=!shortstr:_=-!"
echo !replacestr!
ren "%%i" "!replacestr!.gz"
set /a a+=1
)
)
set /a a-=1
echo rename finish,rename count:%a%。
pause
运行结果: