我正在尝试从位于其他位置的计算机复制一些文件。
机器A通过ssh连接到远程机器B,传递脚本,此脚本必须将文件从机器B复制到机器A.
我无法找到一种方法来完成这项工作,而无需打开另一个连接来复制文件(尝试过rsync和scp)。我想使用相同的ssh连接来复制机器B上的脚本,因为我的密钥允许我连接而无需密码。这是为了自动化一个过程,所以我需要它在没有干预的情况下运行。
使用已打开的ssh连接从机器A上的远程机器B复制的正确语法是什么?
我可以打开从机器A到机器B的连接并从机器A运行rsync命令,但我想要的是另一种方式:从机器B发送到机器A,之后我在机器B中运行。
我怀疑解决方案比我想的更容易,但我无法真正看到它。
答案 0 :(得分:0)
如果通过编写脚本,您的目标是避免再次进行身份验证,请考虑使用ssh的ControlMaster功能,这将允许进一步的ssh会话对现有会话进行身份验证:
http://puppetlabs.com/blog/speed-up-ssh-by-reusing-connections
然后你可以在ssh上使用scp,sftp或rsync从Kenster建议的远程机器中检索文件。