前言
- 一般为了程序后台运行,我们需要使用nohup命令.
- 此时需要对程序运行时所产生的输出信息记录,因此就需要使用linux的信息输出命令
START
一个例子
比如要让redis-server程序后台运行
1.非后台运行:
$> ./redis-server
2.后台运行:
$> nohup ./redis-server 1>/dev/null 2>1 &
- 其中数字1代表标准输出,2代表错误信息输出,还有未使用的标准输入即数字0.
- 1>/dev/null 2>1 &的意思是标准信息输出到空设备即不做任何处理,也不做任何显示,/dev/null也可以替换为文本文件名(如 out.log),此时标准信息就会输出到指定文件.
- 2>1表示错误信息输出到标准输出,即输出同1>后面的位置,当然也可以直接指定新文件名(如 err.log).
- & 表示程序后台运行
上面的命令还可简写:
nohup ./redis-server >/dev/null 2>1 &
- 即去掉标准输出数字1
END
记录
后台运行一个程序
1.先用 netstat -tln 查看端口信息
2.isof -i:端口 可以找到程序进程号PID
3.kill PID 可以关闭程序