nohup和&使用,linux后台不挂断运行

文章目录[x]
  1. 1:&介绍
  2. 2:nohup介绍
  3. 3:2>&1解析
  4. 4:分析 2>&1

&介绍

1.后台运行,输出默认到屏幕

2.免疫SIGINT信号,比如Ctrl+c不会杀死程序

3.响应SIGHUP信号,关闭session发送SIGHUP信号,程序关闭

4.通过jobs和fg重新转到前台运行

 

 

nohup介绍

1.不挂断运行,输出默认到$HOME/nohup.out文件,忽略输入

2.免疫SIGHUP信号,比如关闭session后不会杀死程序

3.响应SIGINT信号,Ctrl+c可以关闭程序

 

 

所以两个搭配在一起使用,不会因为Ctrl+c和关闭Shell让程序停止

nohup python -u sss.py &

nohup默认输出在当前命令运行目录下的nohup.out下,也可以进行修改

nohup python -u sss.py >123.out &

表示后台不挂断执行sss.py把输出内容覆盖到123.out

> 表示覆盖123.out文件(清空123.out原先的内容)

nohup python -u sss.py >> 123.out &

>> 表示追加到123.out文件(在原先123.out内容后开始添加)

 

nohup python -u sss.py >> 123.out  2>&1  &

把错误输出和标准输出都追加到123.out

2>&1解析

2>&1 是将标准出错重定向到标准输出,这里的标准输出已经重定向到了 123.out 文件,即将标准出错也输出到 123.out文件中

分析 2>&1

0 ,1,2分别代表stdin标准输入,stdout标准输出,stderr标准错误

>表示重定向

对于2>&1的理解,2就是标准错误,1是标准输出,那么这条命令不就是相当于把标准错误重定向到标准输出么?是的。

为什么是&1而不是1,这里& 符号是什么?& 符号可以理解为引用(reference)。&1 就是对标准输出的引用。

 

 

 

 

点赞
  1. zefevacerDweva说道:

    cbd medic http://cbd-store.us.com/ - cbd oils cbd oil store hemp cbd

  2. JamesWak说道:

    online sex cams free sexcams00 asian sex cams.

  3. paspspasteWib说道:

    cbd oil http://buycbdoil11.com/ - cbd hemp cbd hemp cbd tinctures cbd oil for sale

发表评论