使用fabric将文件从一个远程服务器复制到另一个远程服务器?

我需要创建一个可以将文件从一个远程服务器复制到另一个远程服务器的服务.我可以在子
shell中运行它:

scp user@host1:/path/to/file/video.mp4 user@host2:/path/to/file

但这似乎不像使用fabric的put命令那样好,它只将本地文件复制到远程机器上.我还需要这个完全用ssh键运行,没有密码提示.

最佳答案 您可以使用
get从host1获取文件,然后使用
put将其推送到host2.

对于密钥,如果私钥不在默认位置,则可以使用-i标志specify it,例如:

fab -i /path/to/priv/key

或者把它放在fabfile中:

from fabric import env
env.key_filename = '/path/to/priv/key'
点赞