nohup命令详解

 

 

 

nohup命令:程序在后台运行

nohup命令可以将程序以忽略挂起信号的形式在后台运行,也就是被运行的程序,输出的结果不打印到终端

无论是否将nohup命令的输出重定向到终端,nohup命令执行的输出结果都会写入到当前目录的nohup.out文件中

如果当前目录的nohup.out文件禁止写入数据,nohup的命令结果会自动输出到$HOME/nohup.out文件中

 

1、nohup直接加上要执行的命令,即使你的终端关闭,程序也会再后台继续运行

nohup ping baidu.com

 

 

 

问题:

输出结果会写入到当前目录的nohup,out文件中,但是程序会卡在前台

关闭终端,程序也会继续运行,直到进程被杀死

 

2、加一个符号:&

不影响我们继续使用终端

 

 

 

 

3、不显示命令的执行结果,直接重定向到垃圾站

把命令结果,重定向写入到nohup.out文件中,把标准错误输出到标准输出,写入到黑洞文件

标准错误输出 2
标准输出 1

(1)ping进程的正确输出结果,以及错误输出结果,都写入到test.out文件中
[root@WALKER ~]# nohup ping baidu.com > test.txt 2>&1 &
[1] 111354
[root@WALKER ~]# ls
anaconda-ks.cfg  test.txt
[root@WALKER ~]#

 

(2)把命令放在后台运行,且无论是正确的输出或是错误的输出,都直接扔进垃圾站,直接销毁
[root@WALKER ~]# nohup ping baidu.com > /dev/null 2>&1 &
[2] 113625
[root@WALKER ~]# ls
anaconda-ks.cfg  test.txt

 

posted @ 2022-05-25 20:03  屯子里唯一的架构师  阅读(6203)  评论(0编辑  收藏  举报