2024-04-29 10:13:43 发布
网友
我对python和web开发还不熟悉,我相信有一个基本问题。 我用金字塔运行服务器,使用nohup.out将输出写入文件。
nohup ../bin/pserve development.ini
当我这样做时tail -f nohup.out 我可以在代码中看到来自logging.info()调用的所有输出。 但我看不到来自print()调用的所有输出。
tail -f nohup.out
logging.info()
print()
原因是什么,我如何设置它,以便在nohup文件中看到print()呢?
可以使用stdbuf-oL刷新print语句。命令看起来像
nohup stdbuf -oL python python_script.py > nohup.out &
你可以用
nohup python -u python_script.py &
打印输出不到终端时缓冲。nohup用非终端(实际上是一个文件)替换stdout。
nohup
在没有任何代码的情况下,我所能做的只是猜测,但最有可能的答案是您的输出在python进程中被缓冲,当缓冲区填满时,它将被刷新到nohup.out。如果是这样的话,试着添加更多的打印来更快地填充缓冲区。
nohup.out
可以使用stdbuf-oL刷新print语句。命令看起来像
你可以用
打印输出不到终端时缓冲。
nohup
用非终端(实际上是一个文件)替换stdout。在没有任何代码的情况下,我所能做的只是猜测,但最有可能的答案是您的输出在python进程中被缓冲,当缓冲区填满时,它将被刷新到
nohup.out
。如果是这样的话,试着添加更多的打印来更快地填充缓冲区。相关问题 更多 >
编程相关推荐