shell 重定向 异常
场景:shell中的标准输入/输出/异常输出 重定向
shell中的标准输入/输出/错误输出 重定向
shell中的标准输入/输出/错误输出 重定向
Linux下使用shell命令时经常使用类似这样的Shell输出重定向:
1>/dev/null 2>&1
在Shell命令的结尾,我们可以通过>符号来重定向输出。
1. 标准输入stdin文件描述符为0,标准输出stdout文件描述符为1,标准错误stderr文件描述符为2
2. /dev/null 空设备文件,相当于垃圾桶
3. 重定向符号:>
逐一解释上面的Shell重定向命令:
(1) >符号代表输出重定向
(2) >前面的数字:
0代表标准输入
1代表stdout标准输出,默认值为1,所以”1>/dev/null”可以简写为”>/dev/null”
2代表stderr标准错误输出
(3)2>&1代表把stderr标准错误输出 重定向 到stdout标准输出
所以,1>/dev/null 2>&1的解释就是
将stdout标准输出重定向到空设备文件/dev/null ,同时将stderr标准错误输出的重定向跟stdout标准输出重定向一致,也输出到空设备文件/dev/null。