我正在尝试使用CMD命令提示符,使用一行代码在大致相同的时间将文件从一个位置复制到多个位置。有没有办法使用COPY / XCOPY等来做到这一点?我无法使用这种类型的命令来完成这项工作:
COPY C:\test.txt C:\A1\ C:\A2\
看起来这应该可行,但它会给出错误,即命令的语法不正确(复制)或参数数量无效(xcopy)。
非常感谢任何建议!我想避免批处理文件,因为这需要实现。
答案 0 :(得分:1)
创建一个包含所有目标位置的批处理文件:
@echo off
Copy %1 targetPath1
Copy %1 targetPath2
Copy %1 targetPath3
...
然后以源文件路径作为参数调用它。
通话将是1行: - )。
答案 1 :(得分:1)
仅限一行代码?丑陋但可能:
for %i in ("c:\A1","c:\my folder","c:\A2") do copy test.txt %i
(如果您在批处理文件中使用它,请将每个%i
替换为%%i
)
答案 2 :(得分:0)
另一种选择 - 命令分隔符&
:
copy "test.txt" "C:\A1\" & copy "test.txt" "C:\A2\"
或:
xcopy "test.txt" "C:\A1\" & xcopy "test.txt" "C:\A2\"
答案 3 :(得分:0)
由于OP要求同时将文件复制到多个位置, 我将添加此解决方案:
for %D in ("C:\A1\", "C:\A2\") do (start /B "Copy to %D" cmd /c "echo Copying file to %D... & copy your_file %D")
使用此命令将软件包分发到七个闪存驱动器...