基本上是这样的我使用FOR /R "C:\Source Folder" %i IN (*.png) DO MOVE "%i" "C:\Staging Folder"
它,它工作得很完美,除了我拥有的所有 .png 文件都具有相同的名称,因此当我执行它时,它会不断询问我是否要覆盖它,我该如何使输出名称以增量后缀显示?
答案1
您只需要添加一个计数器。我一开始10000
只取了最后四位数字(结果文件类似originalname-0001.png
等等。如果 9999 的最大值看起来有点紧,只需将其扩展即可)
@echo off
setlocal enabledelayedexpansion
set counter=10000
FOR /R "C:\Source Folder" %%i IN (*.png) DO (
set /a counter+=1
MOVE "%%i" "C:\Staging Folder\%%~ni-!counter:~-4!%%~xi"
)