【发布时间】:2018-11-23 17:02:51
【问题描述】:
即使发送到命名管道的进程失败,以下玩具脚本 (tmp.sh) 也会以代码 0 退出。如何从命名管道中捕获非零退出代码?或者更笼统地说,某事出了问题?
#!/bin/bash
set -eo pipefail
mkfifo mypipe
FOOBAR > mypipe &
cat mypipe
运行并检查退出代码:
bash tmp.sh
tmp.sh: line 6: FOOBAR: command not found
echo $? # <- Exit code is 0 despite the "command not found"!
【问题讨论】:
标签: bash named-pipes exit-code