联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
color 17 mode con: cols=50 lines=12 title $$$$*RMVB文件批量处理*$$$$ @echo off :start cls @echo ************************************************* @echo * * @echo * 批处理RMVB文件 * @echo * 1、操作文件 * @echo * 2、还原操作 * @echo * 3、退出 * @echo ************************************************* SET /P ST=请输入序号以选择操作: echo. if /I "%ST%"=="1" goto doit if /I "%ST%"=="2" goto redoit if /I "%ST%"=="3" goto eof if {%choice%}=={} goto start :doit if exist doit.txt goto doit2 dir *.rmvb /oe/b >list.txt setlocal enabledelayedexpansion for /f "tokens=*" %%i in (list.txt) do ( set var=%%i set "var=!var:.rmvb=!" echo !var!>>doit.txt ) del list.txt /f/q/s/a :doit2 for /f "tokens=*" %%i in (doit.txt) do mkdir "%%i" for /f "tokens=*" %%i in (doit.txt) do move "%%i".rmvb "%%i" for /f "tokens=*" %%i in (doit.txt) do ren "%%i""%%i".rmvb 01.rmvb ren doit.txt redoit.txt @echo 处理完毕。。。。 pause. goto start :redoit @echo off for /f "tokens=*" %%i in (redoit.txt) do ren "%%i"\01.rmvb "%%i".rmvb for /f "tokens=*" %%i in (redoit.txt) do move "%%i""%%i".rmvb "." for /f "tokens=*" %%i in (redoit.txt) do rd "%%i" /s/q ren redoit.txt doit.txt @echo 操作还原完毕。。。。 pause. goto start
@echo off for /f "delims=" %%i in ('dir/b /a-d') do ( md "%%~ni" copy "%%i" "%%~ni\01%%~xi" echo del/q "%%i" ) pause
Originally posted by 26933062 at 2007-8-13 03:12 PM: 以文件名为名创建文件夹,并把文件移至该文件夹。并重命名为01 就是你说的第4点没看懂,既然已经剪切了,怎么会有重复走过这个过程的文件存在 ...
Originally posted by wudixin96 at 2007-8-13 03:12 PM: if /I "%ST%"=="3" goto :eof '这个冒号必须加的。 goto start '前面的if {%choice%}=={}就不要了。