下面是一段用于批量修改文件的命令,将XXX.jpg修改为img_1.jpg按序号排列文件。
@echo off -----echo off关闭请求回显功能;@表示不显示后面的功能
setlocal enabledelayedexpansion
::打开系统延时--------------::表示注释
set /a b=0------------------set 设置变量
dir /b/od-------按时间顺序显示当前文件夹下的所有文件名
pause---------中间暂停,按任意键继续
for /f "delims=" %%f in ('dir /b/od *.*') do (-----从当前文件夹下取得所有带.的文件名,循环这些文件名,%%f代表文件名,%%符号是for循环中特殊使用的符号
if not "%%f"=="%~nx0" (----判断当前循环的文件名是不是批处理文件名本身,%~nx0 代表批处理文件批处理文件名及扩展名,也就是批处理本身,这一条代码表示防止对批处理本身重命名
set /a b+=1 -----让变量+1
ren "%%f" "img_!b!%%~xf"--返回文件名,格式为img_加上当前变量值加上文件后缀
echo. !b!%%~xf---输出当前变量值加上文件后缀
)
)
pause