Python 后台运行



命令后面加&符号

python /data/python/server.py >python.log &
说明:     
1、 > 表示把标准输出(STDOUT)重定向到 那个文件,这里重定向到了python.log    
2、 & 表示在后台执行脚本,这样可以到达目的,但是,我们退出shell窗口的时候,必须用exit命令来退出,
否则,退出之后,该进程也会随着shell的消失而消失(退出、关闭)


使用nohup

nohup python /data/python/server.py > python.log3 2>&1 &

说明:
1、 1是标准输出(STDOUT)的文件描述符,2是标准错误(STDERR)的文件描述符     1> python.log 简化为 > python.log,表示把标准输出重定向到python.log这个文件
2、2>&1 表示把标准错误重定向到标准输出,这里&1表示标准输出   
为什么需要将标准错误重定向到标准输出的原因,是因为标准错误没有缓冲区,而STDOUT有。   
这就会导致  commond > python.log  2> python.log 文件python.log被两次打开,而STDOUT和 STDERR将会竞争覆盖,这肯定不是我门想要的
3、好了,我们现在可以直接关闭shell窗口,而不用再输入exit这个命令来退出shell了

在python运行中却查看不到输出

因为:
python的输出有缓冲,导致python.log3并不能够马上看到输出。
使用-u参数,使得python不启用缓冲。
所以改正命令,就可以正常使用了

nohup python -u test.py > out.log 2>&1 &






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值