nohup,让python脚本,在linux后台运行

用python跑数据时,经常会用到nohup命令,通常的命令格式如下:
nohup  python  [PythonSourceFile]  ( >  [log file] )    2>&1   &
如果没有指定输出文件,nohup会将输出放到nohup.out文件中,但在程序运行过程中nohup.out文件中不能实时的看到python的输出,原因是python的输出有缓冲。

方案一

使用-u参数,使python输出不进行缓冲,命令格式如下
nohup   python   -u  startup.py    >   abc.log   2>&1  &
可以使用tail查看日志输出
tail -F abc.log

方案二

export PYTHONUNBUFFERED=1
nohup python (> [log file]) 2>&1 &

发表评论

电子邮件地址不会被公开。 必填项已用*标注