使用os.system执行psftp命令

时间:2012-09-11 12:41:48

标签: python sftp

目前我正在研究python,我需要使用psftp命令从其他网络获取一些文件,如下所示:

import os
psftpCmd='psftp sftp.example.com -l user -pw pass'
os.system(psftpCmd)

但是当运行上面的代码时,我收到以下错误:

sh: psftp: command not found

我能否知道该命令有什么问题以及如何执行psftp命令,如上所示?

1 个答案:

答案 0 :(得分:0)

假设安装了psftp并且您可以访问shell:

找到可执行文件的完整路径。从命令行运行which psftp并替换字符串中的值。例如,如果which psftp返回“/ usr / local / bin / psftp”,请尝试:

import os
psftpCmd='/usr/local/bin/psftp sftp.example.com -l user -pw pass'
os.system(psftpCmd)

虽然你应该使用库而不是通过system()调用来运行它。即使subprocess.popen会更好。