linux系统下面的shell有标准输入,标准输出和标准错的概念,
其对应关系是:
标准输入=>0
标准输出=>1
标准错误=>2
如果想将标准输出或者标准错屏蔽,可以将标准输出和标准错误重定向到设备 /dev/null 里面去
下面的内容是网络上摘录的,可以作为参考:
Linux Shell 环境中的输入输出重定向,用符号<和>来表示。0、1和2分别表示标准输入、标准输出和标准错误。
1.重定向标准输出到文件:
cat foo > foo.txt
2.重定向标准错误到文件
cat foo 2> foo.txt
3.重定向标准输出到标准错误
cat foo 1>&2
4.重定向标准错误到标准输出
cat foo 2>&1
5.重定向标准输出,标准错误到同一个文件
cat foo > foo.txt 2>&1或cat foo
&
> foo.txt
这里第个顺序很重要,先把标准输出重定向到文件,再把标准错误输出到标准输出,因为标准输出已经重定向到文件,所以标准错误与重定向到文件。
>&与&>效果相同
2014年3月21日22:23:26
地点:北京四惠地铁站附近
总结:
在Linux的shell上:
0表示标准输入
1表示标准输出
2表示标准错误输出
> 默认为标准输出重定向,与 1> 相同
2>&1 意思是把 标准错误输出 重定向到 标准输出.
&>file 意思是把 标准输出 和 标准错误输出 都重定向到文件file中
2014年3月21日22:23:26
地点:北京四惠地铁站附近
总结:
在Linux的shell上:
0表示标准输入
1表示标准输出
2表示标准错误输出
> 默认为标准输出重定向,与 1> 相同
2>&1 意思是把 标准错误输出 重定向到 标准输出.
&>file 意思是把 标准输出 和 标准错误输出 都重定向到文件file中