我有一个包含三张图片的文件,名为ape.jpg,123.jpg,zoo.jpg 我想写一个批处理文件,它可以将所有三个图片重命名为数字顺序。
ape.jpg -> (1).jpg
123.jpg -> (2).jpg
zoo.jpg -> (3).jpg
我并不真正关心这些图片的原始名称和顺序,我知道这可以在任何版本的Windows中通过手动进入该文件夹并将其全部选中,将其中一个重命名为(1),剩下的照片将以数字顺序排列。但我想用批处理文件来做这件事。
答案 0 :(得分:2)
您应该可以使用FOR循环和计数器变量执行此操作。 for
将遍历dir
的输出以获取完整的文件列表,然后按顺序重命名。
setlocal enabledelayedexpansion
set i=1
for /F %%a in ('dir /B *.jpg') do (
echo ren "%%a" "(!i!).jpg"
set /a i+=1
)
endlocal
这不能保证它们出现的顺序,但它应该对当前目录中的所有* .jpg文件进行操作。运行它,它将显示它将使用的重命名命令。要使其实际重命名文件,请删除echo
行前的ren
。