远程传输一次文件到远程的两个不同目录
Remote transfer file once to two different directories on remote
使用 scp
或 rsync
,是否可以将文件从本地复制到远程服务器上的两个或多个不同目录,但只发送一次文件?
我更喜欢不要在 cp
文件之后手动 ssh,但我会接受这是最后的手段。
scp
是一个简单的工具。替代方案可以是 parallel-scp
,但它可能会复制文件两次。
我唯一能想到的就是 "simplify" 通过将其合并为单个 ssh
命令来实现它:
cat local_file | ssh host "cat /remote/file; cp /remote/file /second/path/file"
不,您不能通过 scp 或 rsyc 执行此操作。您必须多次 运行 命令。你可以这样做
for HOST in server1 server2 server3; do
scp somefile $HOST:~/somedir/
done
有高效的实用程序可以实现此目的,因此请安装类似 parallel, parallel-scp, pssh
等的东西
或者,如果这涉及大量远程位置,我会更喜欢使用 perl 来对进程进行多线程处理。
使用 scp
或 rsync
,是否可以将文件从本地复制到远程服务器上的两个或多个不同目录,但只发送一次文件?
我更喜欢不要在 cp
文件之后手动 ssh,但我会接受这是最后的手段。
scp
是一个简单的工具。替代方案可以是 parallel-scp
,但它可能会复制文件两次。
我唯一能想到的就是 "simplify" 通过将其合并为单个 ssh
命令来实现它:
cat local_file | ssh host "cat /remote/file; cp /remote/file /second/path/file"
不,您不能通过 scp 或 rsyc 执行此操作。您必须多次 运行 命令。你可以这样做
for HOST in server1 server2 server3; do
scp somefile $HOST:~/somedir/
done
有高效的实用程序可以实现此目的,因此请安装类似 parallel, parallel-scp, pssh
等的东西
或者,如果这涉及大量远程位置,我会更喜欢使用 perl 来对进程进行多线程处理。