今天在搞svm识别数字,需要读取图片,但是图片有各种不合适的命名(一般应该只有字母、数字、下划线的组合才是正规的),因此需要对图片(或者任意其他文件格式)重新命名。
可以用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,以此类推
文章来源: 如何用bat命令对某一文件夹下图片批量命名