-u加在python上
python命令加上-u(unbuffered)参数后会强制其标准输出也同标准错误一样不通过缓存直接打印到屏幕。
这是因为python的缓存机制所决定的
如果是使用 nohup python abc.py > nohup.log 2>&1 & 的话,可以将日志写入到nohup.log文件,但是没法实时用tail -f nohup.log来查看日志。
解决方法:
nohup python -u abc.py > nohup.log 2>&1 &
因为python会将日志放到缓存中,等程序执行完成后或者日志达到一定的长度到才写入文件,这个时候加参数“-u”就可以用tail -f nohup.log来实时查看日志了。