我确定我遗漏了一些简单的东西,但是我正在使用执行脚本来调用一些实用程序脚本,并且我想通过一个管道处理实用程序的所有输出。我的问题是实用程序使用 stderr 来报告错误情况,但我无法捕获它以在父脚本中使用。
父脚本:
#!/bin/bash
child 2>&1 >/dev/null
子脚本
#!/bin/bash
echo "Print"
echo "Error" 1>&2
我期望的是stderr
of child
(以及它的所有命令)被重定向到stdout
(因此没有输出),但是当我执行时,parent
我会Error
回显到终端(“打印”被发送到 /dev/null)。