如何用windows命令行對某一文件夾下圖片批量命名

筆者之前搞svm識別數字,需要讀取圖片,但是圖片有各種不合適的命名(一般應該只有字母、數字、下劃線的組合才是正規的),因此需要對圖片(或者任意其他文件格式)重新命名。

如何用windows命令行對某一文件夾下圖片批量命名

可以用bat命令方便實現。

比如我們想將圖片重命名為0001、0002…可以用下面代碼

@echo off
setlocal enabledelayedexpansion
set count=10000
for /f "delims=" %%i in ('dir /b *.jpg,*.png,*.bmp,*.jpeg,*.gif') do call:Rename "%%~i"
pause
exit

:Rename
set /a count+=1
if /i "%~1"=="!count:~1!%~x1" goto :eof
if exist "!count:~1!%~x1" goto Rename
echo 改名:%1 !count:~1!
ren "%~1" "!count:~1!%~x1"
goto :eof

在要重命名的圖片路徑下新建一個txt文檔,將上述代碼複製,然後保存為bat文件(將.txt後綴改為.bat),雙擊即可。

如果想要重命名為發票001、發票002.。。。這樣,只需要將**所有!count前面(最好用編輯器的查找替換功能)**加上發票兩個字,至於數字的位數,由那個10000決定,要得到三位數的就寫成1000,五位數的就寫成100000,以此類推

上面是從001開始排序,如果我們想要從038開始排序,可以將第三行代碼:

set count=10000 

改為

set count=10037


分享到:


相關文章: