go 标准错误输出_Linux入门-标准输出和错误输出
接触过Linux,会听到标准输出和错误输出这个概念,那究竟是什么?
1.标准文件描述符0,1,2
1.1 Stdin标准输入
- 对终端界面来说,标准输入即键盘;
- 也可以使用重定向符号
1.2 Stdout标准输出
- 在终端界面上,标准输出就是显示器。
- 也可以使用重定向符号>file,将内容输出到文件中;>>file 追加到file文件
1.3 Stderr标准错误
默认情况下,标准错误也显示到显示器上。但Stderr不会自动重定向,因此需要设置2>file将错误信息输出到file中。
2.说明
- 正常屏幕输出重定向到文件,但是标准错误直接输出到屏幕
$ sh -x test.sh > output.txt
- 正常屏幕输出重定向到文件,但是标准错误直接输出到屏幕
$ sh -x test.sh 1> output.txt
- 正常屏幕输出输出到output.txt文件,但是标准错误重定向到output_error.txt文件
$ sh -x test.sh 1> output.txt 2>output_error.txt
- 正常屏幕输出和标准错误都重定向到output_all.txt文件
$ sh -x test.sh > output_all.txt 2>&1
- 正常屏幕输出和标准错误都重定向到追加output_all.txt文件
跟上个例子区别在于: 上个例子每次都是文件内容重新开始,而本例是不断追加内容。
$ sh -x test.sh >> output_all.txt 2>&1