这两天要在服务器端一直运行一个Python脚本,当然就想到了在命令后面加&符号
python /data/python/server.py >python.log
# 说明:
# 1、 > 表示把标准输出(STDOUT)重定向到 那个文件,这里重定向到了python.log
# 2、 & 表示在后台执行脚本<br>这样可以到达目的,但是,我们退出shell窗口的时候,必须用exit命令来退出,否则,退出之后,该进程也会随着shell的消失而消失(退出、关闭)
现在当我们直接关闭shell窗口,再连接上服务器,查看Python的进程,发现进程还在
但是,在python运行中却查看不到输出!
因为:
python的输出有缓冲,导致python.log3并不能够马上看到输出。
使用-u参数,使得python不启用缓冲。
所以改正命令,就可以正常使用了。
nohup python -u test.py > out.log &