Linux标准输出(stdout)与标准错误(stderr)重定向
文件描述符
- 0 – stdin (standard input,标准输入)
- 1 – stdout (standard output,标准输出)
- 2 – stderr (standard error,标准错误输出)
语法:
| 语法 | 终端显示 | 文件显示 | 文件存储 | ||
|---|---|---|---|---|---|
| 标准输出(stdout) | 标准错误(stderr) | 标准输出(stdout) | 标准错误(stderr) | ||
| > | no | yes | yes | no | 覆盖 |
| >> | no | yes | yes | no | 追加 |
| 2> | yes | no | no | yes | 覆盖 |
| 2>> | yes | no | no | yes | 追加 |
| &> | no | no | yes | yes | 覆盖 |
| &>> | no | no | yes | yes | 追加 |
| | tee | yes | yes | yes | no | 覆盖 |
| | tee -a | yes | yes | yes | no | 追加 |
| n.e. (*) | yes | yes | no | yes | 覆盖 |
| n.e. (*) | yes | yes | no | yes | 追加 |
| |& tee | yes | yes | yes | yes | 覆盖 |
| |& tee -a | yes | yes | yes | yes | 追加 |
示例:
command > output.txt 2>&1
或
command &> output.txt
- 让命令标准输出和错误以覆盖模式重定向至output.txt
(让命令标准输出以覆盖模式重定向至output.txt,并设置让stderr标准错误重定向到stdout标准输出) - 2>&1中的&是转义字符,用于识别描述符
Linux标准输出(stdout)与标准错误(stderr)重定向
https://www.inktea.eu.org/2021/34190.html