gpt4 book ai didi

python - Paramiko - sftp.get 下载空白文件

转载 作者:太空宇宙 更新时间:2023-11-04 06:00:27 25 4
gpt4 key购买 nike

我正在使用 Paramiko 通过 SSH 连接到服务器,运行命令生成报告,然后将报告下载到我的本地计算机。一切似乎都没有错误地工作正常,但生成的文件在我的本地计算机上是空白的。我正在使用 Python 2.7 和最新版本的 Paramiko。我要下载的文件是 .csv 。我已经验证该文件包含数据服务器端。

我使用的代码如下:

try:
ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(hostname, username=user_name, key_filename=key_file)
except:
print 'error connecting'

try:
stdin, stdout, stderr = ssh.exec_command(report_cmd)
except:
print 'error generating report'

try:

sftp = ssh.open_sftp()
sftp.get(source_str, dest_str)

except:
print 'failed to DL file' + str(sys.exc_info())

ssh.close()

最佳答案

您正在尝试在 ssh.exec_command 完成之前下载文件。

您需要等待;最好的方法是从 stdout 和/或 stderr 读取直到 EOF

我认为这些读取将被阻塞,但由于在它们完成之前您无事可做,所以应该没问题。我相信 EOF 看起来像一个空字符串:""

关于python - Paramiko - sftp.get 下载空白文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25371970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com