节点中的error,stderr,stdout有什么区别

时间:2015-04-15 01:23:17

标签: node.js bash error-handling stdout stderr

我正在使用node.js并希望处理错误消息。 erro,stderr,stdout之间有什么区别?

当脚本编写shell时,我重定向了stderr并找到了有用的错误消息,它解决了这个问题。

我不清楚计算机输出的概念。任何人都可以全面解释一下吗?

感谢。

2 个答案:

答案 0 :(得分:7)

这实际上是一个有趣的问题。如果你像这样格式化问题的标题,你可能会得到更多答案 - 错误,stderr和stdout之间的节点JS差异。
我不会重复stdout和stderr之间的区别,因为之前已经回答过了。

然而,错误和stderr之间的区别并不容易区分。

错误是Node JS创建的错误对象,因为它在执行命令时遇到问题。查看更多here

Stderr 是一个标准的输出流,因为执行过程中出错了 - 这就是Node JS执行命令没有问题,这是你的命令本身会抛出错误。

让我知道这是否清楚,否则,我很乐意举一个例子:)

答案 1 :(得分:2)

stderrstdout是流。写入控制台将记录两个流。显然它们之间存在区别,所以如果我们想(例如)将某些数据重定向到其他地方,我们就有选择的能力。

您可能会发现以下文章有用。

http://www.jstorimer.com/blogs/workingwithcode/7766119-when-to-use-stderr-instead-of-stdout