本文共 560 字,大约阅读时间需要 1 分钟。
今天在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文件的作用,这是一个无底洞,任何东西都可以定向到这里,但是却无法打开.
转载地址:http://xjqxi.baihongyu.com/