處理一些任務,正好用到,記錄之
1 使用for,截取_之后的文件名,並重命名
@echo off & setlocal enableDelayedExpansion rem 1 這是提示輸入文件位置,直接打開文件夾復制路徑、黏貼就行 set /p path=please paste/input your Excel Path : cd /d %path% rem 2 這是通過循環去修改文件夾里面的文件 for /f "tokens=1-3 delims=_" %%i in ('dir /aa /b %path%') do ( ::echo in progressing %%i_%%j_%%k ren "%%i_%%j_%%k" %%k ) rem 3 結束,並打開文件位置 echo. echo. echo its ok now,the file locate at %path% C:\Windows\explorer.exe %path% 把這個放到bat文件里面,運行,按提示輸入,就沒問題了
2 替換文件名中的_,可以替換成任何字符,我這里只置空
@echo off & setlocal enableDelayedExpansion rem 1 這是提示輸入文件位置,直接打開文件夾復制路徑、黏貼就行 set /p path=please paste/input your Excel Path : cd /d %path% rem 2 這是通過循環去修改文件夾里面的文件名字 for /f "delims=!" %%i in ('dir /aa /b %path%') do ( ::echo in progressing %%i_%%j_%%k set str1=%%i set str2=!str1:_=! echo str1 is !str1! str2 is !str2! ren "!str1!" "!str2!" ) rem 3 結束,並打開文件位置 echo. echo. echo its ok now,the file locate at %path% C:\Windows\explorer.exe %path%
二者方法都類似,用到了for,用到了變量,和延遲變量開關
reference