在最后一个Bash多个管道和背景,获取第一个的状态代码

时间:2018-06-07 20:58:30

标签: bash

我有以下代码

process_file $2 $3 | prefix "[JIDDD: $3]" |& logger &

我需要的是process_file函数的return / exitcode,我该怎么办?

已经尝试了PIPESTATUS和变量,但随着流程转移到后台,我们再也无法访问了。

1 个答案:

答案 0 :(得分:0)

您可以让后台进程将状态写入文件。

(process_file $2 $3 | prefix "[JIDDD: $3]" |& logger; echo ${PIPESTATUS[0]} > /tmp/process_file.$$) &
wait
status=$(</tmp/process_file.$$)