Linux永久后台启动程序nohup commmand &

今天在linux上部署服务程序,我一般想让某个程序在后台运行,于是我将常会用 & 在程序结尾来让程序自动运行,于是在SSH客户端执行./Server &,启动成功,在关闭SSH客户端后,运行的程序也同时终止了,怎样才能保证在推出SSH客户端后程序能一直执行呢?通过网上查找资料,发现需要使用nohup命令。于是使用如下形式的命令:

nohup ./Server >/dev/null 2>&1 &

参数说明:

& : 指在后台运行,但当用户推出(挂起)的时候,命令自动也跟着退出;

nohup命令:就是不挂起的意思( no  hang up)。,可以使命令永久的执行下去,和用户终端没有关系;

1. 带&的命令行,即使terminal(终端)关闭,或者电脑死机程序依然运行(前提是你把程序递交到服务器上); 

2.操作系统中有三个常用的流:
  0:标准输入流 stdin
  1:标准输出流 stdout
  2:标准错误流 stderr

>/dev/null 2>&1,这个意思是把标准错误(2)重定向到标准输出中(1),而标准输出又导入文件/dev/null里面,所以结果是标准错误和标准输出都导入/dev/null里面了。 

3./dev/null文件的作用,这是一个无底洞,任何东西都可以定向到这里,但是却无法打开.

猜你喜欢

转载自blog.csdn.net/Swallow_he/article/details/89551114