我正在嘗試清理特定資料夾中的一些檔案名,我想知道如何建立一個批次檔以刪除每個檔案名稱開頭的減號。
我有一堆有 -FileName.pdf 模式的文件,我想刪除前面的減號,這樣我就只有 FileName.pdf。
到目前為止,我有以下命令:
dir /B > Batch.txt
for /f "tokens=1,2" %i in (Batch.txt) DO ren "%i %j" %l
有什麼更簡單的東西可以使用嗎?
先致謝
答案1
我想刪除前面的減號
使用以下批次檔:
@echo off
setlocal enabledelayedexpansion
for /f "tokens=*" %%i in ('dir /b -*.pdf') do (
set _fname=%%i
echo ren %%i !_fname:~1!
)
筆記:
- 這將從與表達式匹配的所有檔案名稱中刪除第一個字元
-*.pdf
。 - 當您確定批次檔將正確重新命名時,請將其替換
echo ren
為。ren
進一步閱讀
答案2
我用免費指揮官XE它具有有用的多重命名功能,可讓您在使用模式重命名一堆文件之前預覽結果。