您的位置:首页 > 其它

【转载】【Windows批处理IV】批量进行文件重命名

2013-07-18 21:20 239 查看
1.过滤文件名中所有数字、汉字、特殊字符(含空格)

@echo off
for %%a in (*.*) do (
if "%%~nxa" neq "%~nx0" (
set "name=%%~na"
setlocal enabledelayedexpansion
set name1=!name!
call :lp
ren "!name!%%~xa" "!nam!%%~xa"
set "nam="
endlocal
)
)
pause
:lp
if defined name1 (
set "var=!name1:~,1!"
if "!var!" leq "Z" (
if "!var!" geq "a" (
set "nam=!nam!!var!"
))
set "name1=!name1:~1!"
goto lp
)


2.不过滤数字

@echo off
setlocal enabledelayedexpansion
set "n=1000"
for /f "delims=" %%a in ('dir/b *.jpg') do call :a "%%a"
for /f "delims=" %%a in ('dir/b/od *.jpg') do set/a "n+=1"&ren "%%a" "!n:~-3!%%~xa"
exit
:a
ren "%~1" "%random%%~x1" || goto a


貌似含正则表达式语法,真心没看懂!以后研究吧。

参考: http://blog.csdn.net/subkiller/article/details/7346794
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: