1)批量更改文件扩展名
@echo off
ren *.tif *.jpg
echo. & pause
2)如何删除文件名中某几个字符串?.bat
@echo off& setlocal enabledelayedexpansion
for /f "delims=" %%1 in ('dir /a /b') do (set wind=%%1
ren "%%~1" "!wind:后缀=!")
3)如何在文件名最后加一个字符串?.bat
@echo off& for %%1 in (*)do ren "%%~1" "%%~n1后缀%%~x1"
4)如何在文件名最前加一个字符串?.bat
@echo off
for %%i in (*) do ren %%i A%%i
echo. & pause
5)如何在文件名最前替换一个字符串?.bat
@echo off
ren *bb*.* 如何*.*
echo. & pause
6)加前缀,去前缀
A)加前缀:
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir/a-d/b/oe') do (
if "%%~xi"==".bat" ren "%%i" "批处理_%%i"
if "%%~xi"==".ini" ren "%%i" "配置文件_%%i"
if "%%~xi"==".rmvb" ren "%%i" "视频_%%i"
if "%%~xi"==".jpg" ren "%%i" "图片_%%i"
if "%%~xi"==".txt" ren "%%i" "文本文件_%%i"
ren "%%i" "其它类_%%i"
)
pause>nul
B)去前缀:
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir/a-d/b/oe') do (
for /f "tokens=1,2 delims=_" %%a in ('echo %%i') do (
ren "%%i" "%%b"
)
)
pause>nul
7)怎样将同一个目录下的两个文件名对调.bat
a)
@echo off&setlocal enabledelayedexpansion
if exist t1.txt del t1.txt /q >nul
for /f "delims=" %%i in ('type t.txt') do (
set b=%%i &set c=!b:~10,5!
if /i "!c!"=="CCCCC" set b=!b:BBBB=YYYY!
echo !b!>>t1.txt
b)
@echo off
ren aa.jpg a___.jpg
ren bb.jpg aa.jpg
ren a___.jpg bb.jpg
echo. & pause
批量删除文件名中的字符串
@echo off & setlocal enabledelayedexpansion
set "str_del=[电影天堂www.dy2018.com]"
for /f "delims=" %%i in ('dir /s/b') do (
set "foo=%%~nxi"
set foo=!foo:%str_del%=!
ren "%%~i" "!foo!"
)
exit