批處理:批量刪除文件名前N個字符

可以把當前目錄所包含的所有文件(包括子目錄下的文件)進行文件名修改,去掉文件名前N個字符。

 

比如當前目錄下的文件如下:

aa12345.txt

bb12345.txt

abc/cc12345.txt

abc/def/dd12345.txt

 

希望得到的結果如下:

12345.txt

12345.txt

abc/12345.txt

abc/def/12345.txt

 

批處理腳本如下:

@echo off
setlocal enabledelayedexpansion

::批量去掉文件名前N個字符,如果有文件夾會搜索文件夾下的每個文件進行修改
set /p format=請輸入需要操作的文件格式:
set /p deletenum=請輸入需要刪除文件名前多少個字符:
for /r %%i in (.) do (
    for /f "delims=" %%a in (' dir /b "%%i\*.%format%" 2^>nul ') do (
		set "t=%%~na"
        ren "%%i\%%a" "!t:~%deletenum%!%%~xa"
    )
)

pause

 

運行腳本即可得到所要結果:

請輸入需要操作的文件格式:txt
請輸入需要刪除文件名前多少個字符:2
請按任意鍵繼續. . .

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章