我有一个python程序main.py,它产生一些我想写入文件的输出。我想执行非阻塞程序。通常我会使用python2.7 main.py > main.out &
或nohup python2.7 main.py &> main.out &
。
我的问题是,该程序可能运行很长时间,并且我希望能够在程序终止之前访问到目前为止创建的输出。当我执行python2.7 main.py > main.out
然后我用Ctrl-C停止程序时,输出文件到目前为止已创建输出。但是,使用非阻塞命令时,输出文件在执行期间以及在我终止程序后仍为空。
我该怎么做?
答案 0 :(得分:1)
你可以尝试使用py -u
标志来运行带有无缓冲stdout / stderr的python进程
python2.7 -u main.py > main.out &