Batch programs files

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

 

posted @ 2010-12-29 18:02  Fandy Xie  Views(319)  Comments(0Edit  收藏  举报