📅  最后修改于: 2023-12-03 15:40:26.859000             🧑  作者: Mango
在 Bash 和其他 Shell 编程语言中,我们经常需要查看程序的输出。通常情况下,我们可以使用标准输出 stdout
进行输出。但是,有时候,如果代码出现了错误,我们需要使用标准错误 stderr
将错误信息输出到终端上,以便我们及时修复代码问题。
在 Linux 系统中,标准错误 stderr
是输出设备的一种,用于输出程序执行时发生的错误信息。标准错误通常不会被重定向到文件中,而是直接输出到终端上,方便使用者及时查看错误信息。
标准输出和标准错误都是用来输出程序的信息的,二者之间有什么区别呢?
标准输出 stdout
默认输出到终端上,而标准错误 stderr
也默认输出到终端上,但是它们输出到的设备是不同的。
在终端上,标准输出一般是以黑色文本输出,而标准错误则是以红色或黄色文本输出,以区别于标准输出,方便用户查看。
标准输出主要用于输出程序的结果等正常信息,而标准错误用于输出程序执行时发生的错误信息,如程序崩溃、文件不存在、权限不足等信息。
通常情况下,我们使用以下命令来查看标准错误输出信息:
./my_script 2> error.log
这条命令可以将 ./my_script
脚本的标准错误信息输出到 error.log
文件中。当然,也可以将标准错误信息输出到终端上,使用以下命令:
./my_script 2>&1
上述命令中的 2
表示标准错误输出设备,&
表示将 2
与 1
合并,表示将标准错误信息输出到标准输出设备上。
标准错误 stderr
是一种用于输出程序错误信息的设备,通常不会被重定向到文件中,而是直接输出到终端上。在 Shell 编程语言中,通过特定的命令可以将标准错误信息输出到文件中,方便我们查看、分析和修复代码问题。