os.system()的控制台输出?
在使用交互式解释器调用 os.system() 时,你可以在控制台看到它的输出。但是在我的情况下,我需要把 sys.stderr 和 sys.stdout 改成另一个类的实例,而 os.system 函数是在 exec 语句中调用的。问题是,我看不到它的输出。它既没有写入 stderr,也没有写入 stdout。
所以我的问题是:os.system() 的输出去哪了呢?
谢谢,
Niklas
1 个回答
3
这个输出会去到文件描述符1或者2,具体取决于它是输出到标准输出(stdout)还是标准错误(stderr)。如果你想对输出有更细致的控制,那就应该使用 subprocess
这个工具。