码迷,mamicode.com
首页 > 系统相关 > 详细

Linux 让程序在后台执行

时间:2019-06-17 17:13:27      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:python   art   直接   不能   缓冲   inux   hup   程序   nbsp   

有些程序我们在打开时,会一直占用我们的终端,而且终端还不能关掉,所以这时候我们就需要让程序在后台运行。

1.命令:nohup

nohup python -u run.py > run.log 2>&1 &

参数说明: run.py: 你需要后台运行的程序.

>: 日志文件追加到文件中

run.log: 运行的日志,或你的文件的输出内容.

& 是一个描述符,如果1或2前不加&,会被当成一个普通文件。

1>&2 意思是把标准输出重定向到标准错误.

2>&1 意思是把标准错误输出重定向到标准输出。

&>filename 意思是把标准输出和标准错误输出都重定向到文件filename中

 这条命令的意思是,执行run.py程序,并把程序中执行的情况记录到run.log文件中,包括程序异常、程序中打印的信息等。

2.若直接使用下面命令呢?

nohup python run.py &

    1    这样运行,在run.py的目录默认直接生成了nohup.out文件,但是内容始终是空的.

原因如下↓↓:

    python的输出又缓冲,导致out.log并不能够马上看到输出。     -u 参数,使得python不启用缓冲。

解决

nohup python -u run.py > run.log 2>&1 &

    1

如果权限不够的话就

nohup sudo python -u flush.py > flush.log2>&1 & --------------------- 作者:来自外星的一只猿 来源:CSDN 原文:

 

--------------------- 作者:来自外星的一只猿 来源:CSDN 原文:https://blog.csdn.net/aa1209551258/article/details/81705150 版权声明:本文为博主原创文章,转载请附上博文链接!

Linux 让程序在后台执行

标签:python   art   直接   不能   缓冲   inux   hup   程序   nbsp   

原文地址:https://www.cnblogs.com/20e8/p/11040541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!