nohup命令使用场景
在使用shell窗口启动服务进程的时候,有些进程需要在关闭shell窗口的情况下依然保持运行状态,就可以使用nohup命令;
命令解释:
nohup:中文翻译为“看不见的”。
nobup:放在命令开头,表示不挂起,也就是即使关闭终端进程也能继续保持运行状态
0:表示标准输入
1:表示标准输出
2:表示错误输出
2>&1:表示将错误输出重定向到标准输出上
&:放在命令结尾,表示后台运行
一般组合使用:
nohup [xxx命令操作] 1>file 2>&1&
表示讲xxx命令运行的结果(包括标准输出和错误输出)输出到file文件中,并保持命令启动的进程在后台运行
案例1:保持在后台启动hive的metastore进程和hiveserver2进程
[atguigu@hadoop202 hive]$ nohup hive --service metastore 2>&1 &
[atguigu@hadoop202 hive]$ nohup hive --service hiveserver2 2>&1 &
案例2:编写java命令启动jar包
java -jar mall.jar >/dev/null 2>&1 &
/dev/null :表示linux的“黑洞”区域,就是可以把任何文件扔到这个目录中,充当垃圾回收的作用;
注意:此案例没有用nohub,只是在运行的时候不在前台显示打印启动信息,关闭当前shell窗口,此进程会立刻关闭;