Python 如何使用paramiko将文件夹从远程复制到本地?

Python 如何使用paramiko将文件夹从远程复制到本地?,python,python-2.7,ssh,scp,paramiko,Python,Python 2.7,Ssh,Scp,Paramiko,这里我提到了一个片段,它放置一个文件,并且可以使用相同的逻辑从远程获取文件 from paramiko import SSHClient from paramiko import AutoAddPolicy from scp import SCPClient ssh = SSHClient() ssh.load_system_host_keys() ssh.set_missing_host_key_policy(AutoAddPolicy()) ssh.connect('192.168.150.

这里我提到了一个片段,它放置一个文件,并且可以使用相同的逻辑从远程获取文件

from paramiko import SSHClient
from paramiko import AutoAddPolicy
from scp import SCPClient
ssh = SSHClient()
ssh.load_system_host_keys()
ssh.set_missing_host_key_policy(AutoAddPolicy())
ssh.connect('192.168.150.4',username='researcher',password='help')

#SCP connectin
scp = SCPClient(ssh.get_transport())
scp.put('test.txt')
现在我的遥控器在两个子目录中有一个文件夹,我想把它复制到我的本地机器上,但我不知道scp到底在哪里联系。有没有办法使用paramiko执行
pwd并在遥控器中迁移。我也用它完成了任务,但它没有完成要求它做的事情,它只是简单地放置文件,但从不返回文件


是否有更好的方法获取文件夹或重新下载文件并复制到我的本地计算机。

您应该创建一个
paramiko.SFTPClient
,然后使用或
listdir\u iter()
枚举要复制的目录中的文件。然后一个接一个地复制它们。没有内置的递归复制操作。

如果不使用Paramiko,有没有其他方法可以使用python脚本将文件夹从远程复制到本地?@SaiKiran:当然,您可以使用
子进程
启动
scp-r
rsync
复制文件夹。但是Paramiko更好,因为它位于Python区域内,并且给了您更多的控制。