😊
PythonでParamiko使ってssh接続を行いscpでファイル転送したいときのコード例
Pythonでscp使って、vpsからファイルを取ってきたかったので、Paramiko使ってコード書きました。
ssh_configを読んできて接続してます。
import os,sys,subprocess,glob
import paramiko
import scp
hostname =''
to_folder = ''
from_folder = ''
## load config
config_file = os.path.expanduser('~/.ssh/config')
ssh_config = paramiko.SSHConfig()
ssh_config.parse(open(config_file, 'r'))
config = ssh_config.lookup(hostname)
## scp get
with paramiko.SSHClient() as ssh:
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.load_system_host_keys()
ssh.connect(
config['hostname'],
username=config['user'],
key_filename=config['identityfile'],
port=config['port']
)
with scp.SCPClient(ssh.get_transport()) as scp:
scp.get(
remote_path=from_folder,
local_path=to_folder,
recursive=True # ディレクトリごとのときは、ここがTrue
)
Discussion