1、标准输入、标准输出和标准错误
- 0是标准输入,默认连接键盘
- 1是标准输出,默认连接终端
- 2是标准错误,默认连接终端
- 3+是其他文件
2、输出重定向操作符
- > file标准输出重定向到文件
- >> file标准输出追加到文件
- 2> file标准错误重定向到文件
- 2> /dev/null标准错误重定向到空文件,并把它丢弃
- > file 2>&1和&> file都是将标准错误和标准输出覆盖到同一个文件
- >> file 2>&1和&>> file都是将标准错误和标准输出追加到同一个文件
重要!!!
重定向的顺序很重要
> file 2>&1 这个是将标准输出重定向到file,然后将标准错误作为标准输出重定向到相同文件(这是这个file中就包括了标准错误和标准输出)
2>&1 > file 这个就是将标准错误重定向到标注输出,然后将仅将标准输出重定向到file(这个时候file就只包含了标准输出)
所以更倾向于使用合并重定向运算符(&> file或者&>> file)