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