import paramiko
import os
paramiko.util.log_to_file('logfile.log')
host = "100.10.89.23"
port = 22
transport = paramiko.Transport((host, port))
password = "pass"
username = "user"
transport.connect(username = username, password = password)
sftp = paramiko.SFTPClient.from_transport(transport)
filepath = '/import/TMP'
localpath = 'F:\\Projects\\Test'
sftp.get(filepath, localpath)
sftp.close()
transport.close()
ftp_priv_key不需要连接到sftp。
假设我在给定的sftp路径中有10个文件,其中6个文件是csv
格式,其他格式或格式不同。我的要求是只复制csv
格式文件。
答案 0 :(得分:2)
您需要执行以下操作:
sftp = paramiko.SFTPClient.from_transport(transport)
for filename in sftp.listdir(filepath):
if filename.endswith('.csv'):
sftp.get(filename, localpath)