python中的command.getstatusoutput()缓冲区是否有限制

python中的command.getstatusoutput()缓冲区是否有限制,python,linux,Python,Linux,我已经创建了一个脚本,在一批文件上运行测试脚本,已经测试了两个晚上,但是它只是挂起在某个点上 我想知道这里是否存在commands.getstatusoutput()的问题,因为测试脚本有大量的日志记录机制 更新: 使用子流程模块函数与使用os.system()有何不同?哪种方法更好?方法getstatusoutput()返回一个字符串,该字符串可能非常长,因此会占用大量空间,并导致磁盘分页和其他讨厌的事情 由于命令模块已被弃用,因此最好使用子流程模块,该模块提供对流程输出的类似文件的访问。如果

我已经创建了一个脚本,在一批文件上运行测试脚本,已经测试了两个晚上,但是它只是挂起在某个点上

我想知道这里是否存在commands.getstatusoutput()的问题,因为测试脚本有大量的日志记录机制

更新:

使用子流程模块函数与使用os.system()有何不同?哪种方法更好?

方法
getstatusoutput()
返回一个字符串,该字符串可能非常长,因此会占用大量空间,并导致磁盘分页和其他讨厌的事情

由于
命令
模块已被弃用,因此最好使用
子流程
模块,该模块提供对流程输出的类似文件的访问。如果以后需要输出,只需将其写入硬盘上的文件即可

cmd = subprocess.Popen(['ls'], stdout=file('output', 'w'))
如果您想让process处理输出,请像这样阅读stdout

cmd = subprocess.Popen(['ls'], stdout=subprocess.PIPE)
for line in cmd.stdout:
    do_stuff(line)
这对你的记忆会更容易