“Shell重定向”的版本间的差异

来自linux中国网wiki
跳到导航 跳到搜索
docker>Evan
 
(导入1个版本)
 

2019年10月14日 (一) 13:52的最新版本

说说2>&1





通过上面command > /dev/null等价于command 1 > /dev/null,那么对于2>&1也就好理解了,2就是标准错误,1是标准输出,那么这条命令不就是相当于把标准错误重定向到标准输出么。
等等是&1而不是1,这里&是什么?这里&相当于等效于标准输出

常见的  commands >> /dev/null  2 >&1


2>&1 错误返回值传递给1输出通道, 同样&1表示1输出通道

2>/dev/null 

>/dev/null 2>&1 帅的解说


1>/dev/null 2>&1  和  >/dev/null 2>&1 是一样的

0代表标准输入
1代表stdout标准输出,默认值为1,所以”1>/dev/null”可以简写为”>/dev/null”
2代表stderr标准错误输出

(3)2>&1代表把stderr标准错误输出 重定向 到stdout标准输出

所以,1>/dev/null 2>&1的解释就是  note 1代表stdout标准输出,默认值为1,所以”1>/dev/null”可以简写为”>/dev/null”

将stdout标准输出重定向到空设备文件/dev/null ,同时将stderr标准错误输出的重定向跟stdout标准输出重定向一致,也输出到空设备文件/dev/null。


Linux IO重定向 以前的WIKI

see also

shell中>/dev/null 2>&1

https://www.jb51.net/article/64183.htm

https://www.zhihu.com/question/53295083