使用 nohup 后台运行 python,print 没有输出到日志
nohup python foobar.py > foobar.log 2>&1 &
发现 foobar.log 中显示不出来 python 程序中 print 的东西。 这是因为 python 的输出有缓冲,导致 foobar.log 并不能够马上看到输出。 python 有个 - u 参数,使得 python 不启用缓冲。
nohup python -u foobar.py > foobar.log 2>&1 &
其他玩法:只输出错误到日志 # 只有错误写入日志 nohup python -u ./foobar.py> /dev/null 2>foobar.log & 不输出到日志 # 无内容显示 nohup python -u ./foobar.py> /dev/null 2>&1 & 全部 print 输出到日志 # 将所有内容写入日志 nohup python -u ./foobar.py> ./foobar.log 2>&1 &