
[www.ff84.com]越狱第4季第1集.rmvb
[www.ff84.com]越狱第4季第2集.rmvb
[www.ff84.com]越狱第4季第3集.rmvb
[www.ff84.com]越狱第4季第4集.rmvb
[www.ff84.com]越狱第4季第5集.rmvb
[www.ff84.com]越狱第4季第6集.rmvb
[www.ff84.com]越狱第4季第7集.rmvb
[www.ff84.com]越狱第4季第8集.rmvb
[www.ff84.com]越狱第4季第9集.rmvb
[www.ff84.com]越狱第4季第10集.rmvb
功夫熊猫.rmvb
龙门飞甲.flv
非常人贩.mp4
我想把越狱的文件名改成如下格式其它电影名字不动
越狱第4季_DVD_01.rmvb
越狱第4季_DVD_02.rmvb
越狱第4季_DVD_03.rmvb
越狱第4季_DVD_04.rmvb
越狱第4季_DVD_05.rmvb
越狱第4季_DVD_06.rmvb
越狱第4季_DVD_07.rmvb
越狱第4季_DVD_08.rmvb
越狱第4季_DVD_09.rmvb
越狱第4季_DVD_10.rmvb
不知道哪位大侠能写出又简单又实用的批处理,最好能在关键处注以说明.非常感谢!
如果只是针对你的例子,那么很容易做到源歼,但是如果要应用到其它文件就很难了,因为命名规则不一样。最好的办法是,自己设定通用命名,然后程序添加数字集数。
@echo off&setlocal ENABLEDELAYEDEXPANSION
set "debug=echo"
::set "debug=echo" 时,表示调试模式,不会更改文件名,用以检查更名是否符合要求;删除上面这句,运行即可更改文件名。
set /p 通配字=请输入通配字符:
::如"越狱",能区别其它电影即可。
set /p 通用名=请输入通用名:
::=========通用名说明===============
::1、命名使用“$”代替集数变量,可以用在文件名的任意位置。
::2、单"$"表示使用文件本身的集数数字;
::3、双"$$"表示使用自定义的2位数字,不足2位的前面添0,如01。
::4、三“$$$”表示使用自定义的3位数字,前面添0凑足3位,如001,010。
::5、注意:原文件名的数字第一位就带有0的,只能使用单"雹春冲$"。
::示例:匹配字输入森握"越狱",通用名输入"越狱第4季_DVD_$$",数字输入"3"(前面有84,4两个无关数字), 输出 "越狱第4季_DVD_08.rmvb" 。
:分析规则
if not "%通用名%"=="%通用名:$=%" set bl=1&set th=$
if not "%通用名%"=="%通用名:$$=%" set bl=2&set th=$$
if not "%通用名%"=="%通用名:$$$=%" set bl=3&set th=$$$
for /f "delims=" %%a in ('dir /a-d /b *%通配字%* ') do (
if not defined tokens (
set /p tokens=请查看文件名“%%~na”,输入作为文件集数是第几个数字?:
)
set "str=%%~na"
for /l %%i in (0 1 9) do set "str=!str:%%i=!"
call :重命名 "!str!" "%%a" !tokens!
)
echo,更名完成!
pause>nul
goto :eof
:重命名
for /f "tokens=%3 delims=%~1" %%n in ("%~n2") do (
if !bl! equ 1 (
%debug% ren %2 "!通用名:$=%%n!%~x2"
) else (
set /a num=%%n+1000
for %%x in (%bl%) do set "num=!num:~-%%x!"
for /f "tokens=1,2" %%x in ("!num! %th%") do %debug% ren %2 "!通用名:%%y=%%x!%~x2"
)
)
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /s /b *.rmvb^|findstr "ff84"') do (
set x=%%i
set y=%%~nxi
set z=!y:~20,2!
set z=!z:集=!
if !z! lss 10 set z=0!z!
move !x! 越狱第4季_DVD_!z!.rmvb
)
pause
尽租雀量保证电影文件路明型碧径无空激举格
写皮数个批处理也是有针对昌握猛性的,你还不如下载:
文件文件夹批量重命名自定义工具[单文件版]V1.00 绿色版
这个软件你想怎么换名都可以。同时支持文件夹换耐桥名。
@echo off
for /f "tokens=1* delims=]" %%i in ('dir/b/a-d *.rmvb') do ren "茄咐%%i]%%j" "%%j"
::dir取文毕斗件名以】为分隔符,改名时只保留分隔符后面的手纳磨部分。
@echo off
set a=[www.ff84.com]
for /l %%i in (1,1,10) do ren %a%越狱衡腔码第圆没4季第%%i集.rmvb 越狱第4季_DVD_0%%i.rmvb
这样第十个会变成010集 嘿咐哪嘿 。懒得改了