nohup使用

nohup:不挂断运行

在忽略挂起信号的情况下运行给定的命令,以便在注销后命令可以在后台继续运行。

可以这么理解:不挂断的运行,注意并没有后台运行的功能,就是指,用nohup 运行命令可以是命令永远运行下去。

而& 指后台运行

没有nohup执行
[root@VM_0_10_centos frp_0.27.0_linux_amd64]# ./frps -c frps.ini 
2019/12/02 21:51:57 [I] [service.go:139] frps tcp listen on 0.0.0.0:7000
2019/12/02 21:51:57 [I] [service.go:181] http service listen on 0.0.0.0:9080
2019/12/02 21:51:57 [I] [service.go:232] Dashboard listen on 0.0.0.0:9090
2019/12/02 21:51:57 [I] [root.go:204] Start frps success
2019/12/02 21:52:01 [I] [service.go:340] client login info: ip [59.41.161.140:22957] version [0.27.0] hostname [] os [linux] arch [amd64]
2019/12/02 21:52:01 [I] [tcp.go:66] [f0cdeb3e0c5fb750] [ssh] tcp proxy

加上之后
[root@VM_0_10_centos frp_0.27.0_linux_amd64]# nohup ./frps -c frps.ini 
nohup: ignoring input and appending output to `nohup.out'


注意:这个是不支持后台的,也是在前台,只不过输出不在前台,它是忽略内部的挂断信号,不挂断运行
所以ctrl +c 是会进程中断的

一般使用都是两者结合使用
[root@VM_0_10_centos frp_0.27.0_linux_amd64]# nohup ./frps -c frps.ini 2>&1 &
[1] 8729
[root@VM_0_10_centos frp_0.27.0_linux_amd64]# nohup: ignoring input and appending output to `nohup.out'
^C
[root@VM_0_10_centos frp_0.27.0_linux_amd64]# ps aux |grep frps
root      8729  0.2  0.9 113704 18556 pts/1    Sl   22:07   0:00 ./frps -c frps.ini

#不挂断的后台运行
#"2>&1" 表示 错误和输出都传到nohup.out文件中,默认状态只把输出输出到nohup.out文件中
#默认输出到nohup.out文件中,也可以进行修改,下列
[root@VM_0_10_centos frp_0.27.0_linux_amd64]# nohup ./frps -c frps.ini > ./frps.log  2>&1 &
[2] 9384

猜你喜欢

转载自www.cnblogs.com/betterquan/p/11973637.html
今日推荐