我有n我想透過在現有名稱之間新增通用名稱來重新命名的檔案數。
例如
"LRHP 100055"
"LRHP 200452"
"HRVG 500002_thumb"
我想將上述文件重命名為:
"LRHP 00100055"
"LRHP 00200452"
"HRVG 00500002_thumb"
我想在數字前面加兩個零點。我現有的名字不應該改變。
答案1
批次腳本重新命名並在檔案名稱的一部分中添加雙零
在下面的例子中我使用了對於/F循環設定分隔符號和標記解析檔案名稱部分,並使用它們設定變數以供以後與任命令。我也用過設定本地啟用延遲擴展處理循環中設定的變數的擴展,以便在循環內每次迭代時使用重命名命令正確使用(不在運行時解析)。
要重新命名的檔案沒有檔案副檔名
@ECHO ON
SETLOCAL ENABLEDELAYEDEXPANSION
SET SourceDir=C:\Users\User\Desktop\Tester
FOR /F "TOKENS=1-2 DELIMS= " %%F IN ('DIR /B /A-D "%SourceDir%\*"') DO (
SET "part1=%%~F"
SET "part2=%%~G"
SET "part3=%%~H"
REN "%SourceDir%\!part1! !part2!" "!part1! 00!part2!"
)
GOTO EOF
帶有要重新命名的檔案的檔案副檔名
@ECHO ON
SETLOCAL ENABLEDELAYEDEXPANSION
SET SourceDir=C:\Users\User\Desktop\Tester
FOR /F "TOKENS=1-3 DELIMS=. " %%F IN ('DIR /B /A-D "%SourceDir%\*"') DO (
SET "part1=%%~F"
SET "part2=%%~G"
SET "part3=%%~H"
REN "%SourceDir%\!part1! !part2!.!part3!" "!part1! 00!part2!.!part3!"
)
GOTO EOF