我想使用 stdout 和 stderr 来确定其他应用程序提供的命令是否使用了一些错误消息。我可以使它适用于系统命令,如下所示。
size_permission = Popen([ "ls" , "-l" , '/home/jnh.txt' ] , stdout=subprocess.PIPE , stderr=subprocess.PIPE)
如果文件 /home/jnh.txt 不存在,则 stderr 中有如下输出:
>>> for tst in size_permission.stderr:
... print tst
...
ls: /home/bta/jnh.txt: No such file or directory
然后标准输出没有任何预期的输出。
>>> for tst in size_permission.stdout:
... print tst
...
现在,我希望与其他应用程序命令具有相同的行为。我试过了,但即使“其他应用程序命令”有错误消息,在 stdout 中总是有输出而不是在 stderr 中?有没有办法使这项工作?
谢谢