我想从命令中获取标准输出,同时还获取退出代码。我可以缓冲所有标准输出,也可以使用以下命令将标准输出发送到终端:
gp_result="$(git push 2>&1 | tee -a /dev/stdout)"
但我怎样才能获得子命令的退出代码呢?这是最好的方法吗:
gp_result="$(
(git push 2>&1 | tee -a /dev/stdout)
exit_code="$?"
echo
echo "exit code: $exit_code"
)"
然后解析输出?