找回密码
 加入
搜索
查看: 6123|回复: 14

[AU3基础] 如何利用fastcopy的快速copy?

 火.. [复制链接]
发表于 2011-1-6 09:44:10 | 显示全部楼层 |阅读模式
本帖最后由 dearmb 于 2011-1-6 10:05 编辑

关键字fastcopy没查到什么,查到一个,是用run 运行fastcopy加参数吗?
没有什么别的代码运行吗?

现在情况是这样,在公司要拷贝的东西,文件很小,都是文本,但是文件数量很多,pc也很多,时间很长
以往都是用xcopy的bat脚本拷贝的,复制操作需要一台一台复制,很慢
听说fastcopy复制多文件很快,怎么用呢?
还有个想法是,怎样能做到同时复制多台PC,比如自定义10台,同时复制十台,拷贝完一台自动加一台拷贝
始终保持10台机器一直拷贝,直到结束
不知道怎么做,、什么多线程多进程吗?
发表于 2011-1-6 11:37:12 | 显示全部楼层
不明白你要实现什么样的效果,比如说:
1. 从服务器复制文件到每10台客户机?
2. 从10台客户机收集资料到服务器?
。。。还是另有其它模式?

Fastcopy的命令行模式参数介绍见以下地址:
http://www.autoitx.com/forum.php ... ;highlight=fastcopy
 楼主| 发表于 2011-1-6 12:25:10 | 显示全部楼层
本帖最后由 dearmb 于 2011-1-6 12:26 编辑
不明白你要实现什么样的效果,比如说:
1. 从服务器复制文件到每10台客户机?
2. 从10台客户机收集资料到 ...
kingfirekkk 发表于 2011-1-6 11:37


可以算作第一个吧,举个例子:现在我用的方法是制作bat拷贝
xcopy /e /i /y D:\SOHO\*.* \\192.168.131.1\E$\
xcopy /e /i /y D:\SOHO\*.* \\192.168.131.2\E$\
……
xcopy /e /i /y D:\SOHO\*.* \\192.168.131.200E$\
拷贝完.1才能拷贝.2,之后.3,然后拷贝.4……直到200,比如一台需要一分钟,200台需要200分钟
如果电脑够强悍的话,能做到同时拷贝1-50,那么拷贝这200台只需要4分钟了
发表于 2011-1-6 12:58:36 | 显示全部楼层
你用XCOPY也可以的呀
只是你在写代码时,用RUN  写 代码,不用runwait
   如果一次写50个,那就同时拷贝50
 楼主| 发表于 2011-1-6 13:05:32 | 显示全部楼层
你用XCOPY也可以的呀
只是你在写代码时,用RUN  写 代码,不用runwait
   如果一次写50个,那就同时拷贝5 ...
都市浪子666 发表于 2011-1-6 12:58


是,直接bat把200个IP分开也可以,但是都需要手动分多麻烦啊
而且这么做的话,只能完全拷贝完50个,再拷贝下50个吧
我的意思是,能不能做到拷贝结束N个,后边的IP地址就有N个顶上去,保持同时50个拷贝
发表于 2011-1-6 14:06:59 | 显示全部楼层
回复 5# dearmb

感觉可以使用AUTOIT的多进程技术,用来实现伪多线程....
另外,RUN函数会返回PID值,如果监视此PID存在,则不做动作,不存在则执行下一个排程中的进程...应该是可以实现的,期待高手解惑哦。。。

实现这个目标的方法不止一个,就看谁的最简单有效了。

帮顶...
发表于 2011-1-6 15:56:22 | 显示全部楼层
回复 5# dearmb


    是可以的,白天比较忙,晚上写代码
发表于 2011-1-6 19:06:22 | 显示全部楼层
本帖最后由 都市浪子666 于 2011-1-6 19:13 编辑



ProcessClose("xcopy.exe")
$file = FileOpen("list.txt", 0)

If $file = -1 Then
    MsgBox(0, "错误", "不能打开文件.")
    Exit
EndIf


While 1
        Sleep(10)
        $proces_sum=ProcessList ( "xcopy.exe" )  ; 读取xcopy.exe 的进程数组
    if          $proces_sum[0][0] < 50 Then  ; 如果少于50个 xcopy.exe 进程 则再读取--运行
         $line = FileReadLine($file)
         If @error = -1 Then ExitLoop   
                 Run('xcopy /e /i /y D:\SOHO\*.*    "' &$line & '"' , @ScriptDir ,@SW_SHOW)
                 
        EndIf
Wend
FileClose($file)


Exit



把要复制的目标地址操作在list.TXT文件里,如下

\\192.168.131.1\E$\
\\192.168.131.2\E$\
……
\\192.168.131.200E$\



这样应该可以的,本人测试了,操作系统是XPSP2的
发表于 2011-1-6 22:12:09 | 显示全部楼层
-----------------------------------------------------------

主机创建:\\IP\只读共享\镜象.bat


工作站运行:
启动文件夹中放入
\\IP\只读共享\镜象.bat 的链接
<---开机时就会运行---> 

-----------------------------------------------------------
如做镜象同步也可用 Robocopy.exe (不明白怎样使用就不要动)
简单易用!
镜象时注意下目标路径(会删除源中没有的东东)!!!
-----------------------------------------------------------
发表于 2011-1-6 22:21:17 | 显示全部楼层
这是主机同步到工作站的BATCH脚本
@SET "PRG=QQ.exe"
@SET "SRC=\\192.168.0.108\e$\Program Files\Tencent\QQ"
@SET "DST=E:\Program Files\Tencent\QQ"&
@IF NOT EXIST "%SRC%\." GOTO:EOF
@IF "%TITLE%"=="" (CMDOW.EXE @ /DIS /HID)
IF "%HID%"=="HID" (
  @REM 原窗运行
  @CALL RoBoCopy.exe "%SRC%" "%DST%" /MIR
) ELSE (
  @REM 弹窗运行
  @CALL start "%TITLE%正在更新" /wait cmd.exe /c "CMDOW.EXE "%TITLE%正在更新" /DIS /MOV 120 0 &CMDOW.EXE @ /DIS &mode con: cols=96 lines=8 &color f0 &RoBoCopy.exe "%SRC%" "%DST%" /MIR "
)
@IF "%TITLE%"=="" IF "%HID%"=="" (CD /D "%DST%\Bin" &START %PRG%)

镜象只需要1个参数即可
-----------------------------------------------------------
RoBoCopy.exe "%SRC%" "%DST%" /MIR
-----------------------------------------------------------
 楼主| 发表于 2011-1-8 21:06:25 | 显示全部楼层
把要复制的目标地址操作在list.TXT文件里,如下

\\192.168.131.1\E$\
\\192.168.131.2\E$\
…… ...
都市浪子666 发表于 2011-1-6 19:06



  感觉改一改应该适合我用,但是有个问题,用xcopy怎么能确认是否拷贝成功呢?
如果要是能用dircopy就好了
发表于 2011-1-8 22:04:43 | 显示全部楼层
用这个TeraCopy,这个软件可以接管windows的粘贴复制
发表于 2011-1-8 22:51:24 | 显示全部楼层
回复 11# dearmb



xcopy /e /i /y D:\SOHO\*.* \\192.168.131.1\E$\
如果这命令在批处理能拷贝成功,那用我那代码也能拷贝成功的,
 楼主| 发表于 2011-1-9 16:45:05 | 显示全部楼层
回复  dearmb



xcopy /e /i /y D:\SOHO\*.* \\192.168.131.1\E$\
如果这命令在批处理能拷贝成功,那 ...
都市浪子666 发表于 2011-1-8 22:51

恩,我明白,但是在实际用的时候,可能会有1000多台电脑进行拷贝操作,难免有某台机器关机了,网线掉了……等等故障致使拷贝失败,如果没有日志的话,挺难搞的,能不能做到呀?谢谢,好像fastcopy有日志,但是搜索fastcopy就那么一个帖子,唉,到底怎么用好呢……
发表于 2011-1-9 19:44:13 | 显示全部楼层
回复 12# bdrdc


    这个软件速度不怎么快……
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 18:54 , Processed in 0.078508 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表