我有一個批次檔
把檔案拖拉到上面
以批次檔開啟的話
檔名就可以自動減一
例如0050會變0049
但是我一次選多個檔案拖拉到批次檔的時候只會執行一個檔案
請問有辦法解決嗎?
SETLOCAL ENABLEDELAYEDEXPANSION
set Filename=%~n1
echo %Filename%
set Filename=%Filename:~-1%
echo %Filename%
set /a Filename=Filename-1
echo %Filename%
ren %1 %Filename%.txt
請參考
@Echo Off
For %%i In (%*) Do (
Echo 這裡插入原來的批次指令 變數替換成 %%i
)
Echo 作業完成.
Pause
說明:
可拖曳至批次檔旳檔案數量會受限於路徑及檔名,若整個檔案的路徑越長則可拖曳的數量越少,基上上百個不是問題.
若檔案過多時批次檔會直接跳脫不執行任何動作,最後的pasue 用來確認作業有完成.