目标:我正在尝试将文件夹及其文件从 HOST_C 复制到 HOST_A。 ssh
或 scp
由于 key 的原因只能通过 HOSTB 完成。
基础设施:
HOST_A<-->HOST_B<-->HOST_C
当前程序:
ssh to host_B
scp -r from folder at C to folder on B
exit ssh from B
scp -r from folder on B to folder on A
ssh to host_B again
rm -r folders created
我已经尝试使用 ProxyCommand 但没有成功。
欢迎提出建议
最佳答案
您可以使用 ssh 从主机 B 连接到主机 C,创建文件夹的 tar 存档以复制并将输出发送到 STDOUT 并将所有这些通过管道传输到连接到主机 A 的第二个 ssh session 并解压缩收到的 tar 存档在标准输入上。
ssh host_C "cd/somewhere; tar czpf - 文件夹"| ssh host_A "cd/somewhere; tar xzpf -"
关于linux - 用于远程文件夹复制的嵌套 scp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43395864/