【发布时间】:2015-12-21 22:24:05
【问题描述】:
使用在How can you diff two pipelines in Bash? 中找到的答案,我编写了一些我想比较输出的shell 脚本:
diff <(script1 | script2) <(script3 | script4)
但是,在 subshell 管道中的任何脚本中打印到 STDERR 的任何错误都会消失。如何让它们在我的外层脚本(包含差异)中打印?
【问题讨论】:
-
脚本 1..4 中的错误消息不应该消失在黑洞中;你只是将他们的标准输出重定向为给
diff的文件。 -
您在此处提供的代码不会将 stderr 重定向到任何地方,这样它就会转到控制台。请测试您是否提供了足够的信息来重现您询问的任何错误。
-
嗯,这有点奇怪:我现在似乎无法重现它。其中一个脚本一定是默默地失败了。我想我会将此标记为已解决。
标签: bash shell pipeline io-redirection