Centos命令SSH终端中断后不影响运行命令

SSH连接服务器后,由于本人租用的服务器一直比较经济(呵呵,低配廉价),SSH终端中断是常有的事情,还有的时候服务器安装依赖包down个没完,SSH终端中断后程序能一直保持运行状态。
需要用到的命令nohup和&这两个指令。
nohup作为一条指令的开头,表示这条指令不会被HUP信号中断。当你的SSH断开时,服务器的程序会接到HUP信号,而nohup会忽略这个信号。
&作为一条指令的结尾,表示这条指令不会被INT信号中断。有时我们会用ctrl+c来终止一条指令,这个时候就是发送了INT信号。
1.nohup

用途:不挂断地运行命令。

语法:nohup Command [ Arg … ] [ & ]

无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。

如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。

如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。

退出状态:该命令返回下列出口值:   
  126 可以查找但不能调用 Command 参数指定的命令。   
  127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。   
  否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。
2.&

用途:在后台运行

一般两个一起用

nohup command &

猜你喜欢

转载自blog.csdn.net/taogunet/article/details/111397122