python 的 SFTP

SFTP with python

是否有人知道使用 python 脚本从服务器获取远程文件的方法,该方法适用于非常大的文件?

我目前正在使用 Paramiko,它运行良好,但我担心它的目标用例将是相当大的 .bag 文件,可能约为 10 gig。我对此的有限理解是,下载的文件将存储在 RAM 中而不是驱动器上,直到我将其存储到驱动器上。

还是我想优化一个不存在的问题?

有没有办法在下载数据时保存数据?

我考虑过只使用 bash 脚本,我想这会起作用,但是需要很多额外的功能。因此我使用 python.

另一种选择是使用 OS 库来简单地 运行 SFTP。

我很感激任何人对此的想法。

谢谢!

看来我对 Paramiko 和 SCP / SFTP 的理解有问题。

执行此操作的默认方式不会将其存储在 RAM 中,而且我误读了我去年编写的代码 - 我们都犯了这个错误!

一个最小的工作示例 -

def DownloadSFTP(self):
    self.sftp.get(self.remotepath, self.localpath)
    self.sftp.close()