Python-将stdout重定向到Python中的文件?
如何在Python中将stdout重定向到任意文件?
当从ssh会话中启动运行了很长时间的Python脚本(例如,Web应用程序)并进行背景调整,并且ssh会话关闭时,该应用程序将在尝试写入stdout时引发IOError
并失败。我需要找到一种方法来使应用程序和模块输出到文件而不是stdout,以防止由于IOError
而导致失败。当前,我使用nohup
将输出重定向到文件,并且可以完成工作,但是我想知道是否有一种出于好奇而无需使用nohup
的方法。
我已经尝试过了sys.stdout = open('somefile', 'w')
,但是这似乎并不能阻止某些外部模块仍输出到终端(或者sys.stdout = ...
线路根本没有触发)。我知道它应该可以通过我测试过的简单脚本工作,但是我还没有时间在Web应用程序上进行测试。