如何同时将文件复制到远程计算机列表?

时间:2013-03-08 12:27:14

标签: shell vbscript xcopy

我有一个VBScript函数,可以使用xcopy命令将文件复制到远程计算机。该脚本首先从文本文件中读取目标计算机列表,将列表转换为数组,然后遍历该数组。对于阵列中的每台目标机器,我使用xcopy在那里传输指定的文件。 这个系统工作正常,但由于我有40多台目标机器,需要一段时间才能完成。有更快的方法吗?有没有办法一次性对所有机器执行“广播”复制文件? 谢谢, 约翰

1 个答案:

答案 0 :(得分:2)

在VBScript中,您只能按顺序执行此操作,因为语言/解释器不支持并行处理。但是,您可以使用批处理脚本执行此操作:

for /f %%h in (targets.txt) do (
  start "" "%COMSPEC%" /c xcopy C:\src \\%%h\dst
)

请注意,这不一定能加快速度,因为带宽是所有任务共享的有限资源。当并行运行多个任务时,每个任务只占带宽的一小部分,因此需要更长的时间才能完成。