如何使用 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') # Copy my_file.txt to the server

更新於: 2019-12-16

8K+ 次瀏覽

開啟你的 職業生涯

參與培訓並獲取認證

開始學習
廣告