如何在nohup上将打印重定向到日志文件

时间:2018-01-28 17:48:32

标签: python

nohup python3 main.py > log.output &

因此,我通过我的框架得到一些输出,但我的个人print语句没有记录到log.output。有没有什么办法解决这一问题?

nohup下的输出

nohup: ignoring input * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) * Restarting with stat * Debugger is active! * Debugger PIN: 571-306-491 XXX - - [28/Jan/2018 17:56:42] "POST /TestEndpoint HTTP/1.1" 201 - XXX - - [28/Jan/2018 17:57:00] "POST /TestEndpoint HTTP/1.1" 201 -

正常运行输出

python3 main.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 571-306-491
test endpoint
XXX - - [28/Jan/2018 18:01:52] "POST /TestEndpoint HTTP/1.1" 201 -

尝试了所有这些:

nohup python3 -u main.py &
nohup python3 main.py > log.output 2>&1 &
nohup python3 -u main.py > log.output 2>&1 &
nohup python3 main.py > log.output &
nohup python3 -u main.py > log.output &

只显示正确的输出python3 main.py

1 个答案:

答案 0 :(得分:0)

默认情况下,

print将数据发送到sys.stdout,但除非您另有明确说明,否则将其缓冲。

可以尝试重定向stderr中的stdout,只是为了检查nohup是否会以某种方式影响它。

nohup python3 main.py > log.output 2>&1 &