如何使用Python将文件从一个服务器复制到另一个服务器?
通过ssh将文件从一个服务器复制到另一个服务器的最简单方法是使用scp命令。要调用scp,您需要使用subprocess模块。
例如
import subprocess
p = subprocess.Popen(["scp", "my_file.txt", "username@server:path"])
sts = os.waitpid(p.pid, 0)
您需要使用waitpid调用来等待复制完成。
另一种解决方案是打开一个ssh连接并使用scp模块。
例如
from paramiko import SSHClient
from scp import SCPClient
ssh = SSHClient()
ssh.load_system_host_keys()
ssh.connect('user@server:path')
with SCPClient(ssh.get_transport()) as scp:
scp.put('my_file.txt', 'my_file.txt') # 将my_file.txt复制到服务器
极客教程