修改文件名的批处理代码
时间:2021-12-14 10:43:25|栏目:DOS/BAT|点击: 次
实例1
@echo off & setlocal enabledelayedexpansion echo -==文件名称替换(去除文件名中的_v2和_V3)==- echo. echo. set /p folder=请输入一个路径: for /r %folder% %%i in (*) do ( set file=%%i set file=!file:_v2=! set file=!file:_v3=! if %%i neq !file! (move "%%i" "!file!") ) echo. echo. echo 全部文件名替换完成。 echo 按任意键退出。 pause>nul
实例2 批处理替换修改文件名
当你有很多类似的文件,文件名可以很规律却又有些不规律的时候...可以试试这个批处理。
@echo off echo.&echo. title 批量替换文件名中的部分字符串&color 3f echo Note: echo 本批处理可批量替换本文件所在文件夹下的所有文件名的相同字符 echo.&echo.&echo.&echo.&echo.&echo. echo.&set /p strtemp3= 请输入要替换的文件类型: echo.&set /p strtemp1= 请输入要替换的字符串(可替换空格): echo.&set /p strtemp2= 请输入替换后的字符串(删除则直接回车): setlocal enabledelayedexpansion for /f "delims=" %%a in ('dir /a /b *.%strtemp3%') do ( set nobird=%%a ren "%%~a" "!nobird:%strtemp1%=%strtemp2%!") echo.&echo.&echo.&echo.&echo Done! pause
批处理重命名为按数字增加的实现代码
1.将要重命名的文件集体选择右击重命名为非数字的名称
2.将此命令保存成bat放在要重命名的目录下,名字改为demo.bat (或自行改成其他,代码跟着更改)
@echo off setlocal enabledelayedexpansion for %%x in (*) do ( if not "%%x"=="demo.bat" ( set /a sum+=1 rename "%%x" "!sum!.txt" ) ) echo 批量重命名完成! pause
3.更改不同的后缀名根据自己需要更改
批处理命令实现文件规范重命名
平时较少利用批处理命令,通过网络学习实现该功能,分享给需要的朋友。
实现批处理所在文件夹下指定后缀名(如本例JPG)的全部文件(不包括子文件夹)的名字为规范的文件名。
@echo off&setlocal EnableDelayedExpansion set a=0 for /f "delims=" %%i in ('dir /b *.jpg') do ( if not "%%~ni"=="%~n0" ( if !a! LSS 10 ( ren "%%i" "sample0000!a!.jpg")else if !a! LSS 100 ( ren "%%i" "sample000!a!.jpg")else if !a! LSS 1000 ( ren "%%i" "sample00!a!.jpg")else if !a! LSS 10000 ( ren "%%i" "sample0!a!.jpg")else ( ren "%%i" "sample!a!.jpg") set/a a+=1 ) )