shell 标准输入输出及错误输出 重定向
标准输入,标准输出,错误输出(0 1 2)
>/dev/null 2>&1。这条命令其实分为两命令,一个是>/dev/null,另一个是2>&1
>/dev/null 2>&1 的作用就是让 标准输出、错误输出 重定向到/dev/null中(丢弃标准输出)
2>&1
0 标准输入 /proc/self/fd/0
1 标准输出 /proc/self/fd/1
2 错误输出 /proc/self/fd/2
采用&可以将两个输出绑定在一起
就是错误输出将会和标准输出输出到同一个地方
命令 标准输出 错误输出
>/dev/null 2>&1 丢弃 丢弃
2>&1 >/dev/null 丢弃 屏幕
nohup结合
我们经常使用nohup command & 命令形式来启动一些后台程序,比如一些java服务:
# nohup java -jar xxxx.jar &
为了不让一些执行信息输出到前台(控制台),我们还会加上刚才提到的>/dev/null 2>&1命令来丢弃所有的输出:
# nohup java -jar xxxx.jar >/dev/null 2>&1 &