コマンドから標準出力を取得し、終了コードも取得したいと思います。以下を使用して、すべてのstdoutをバッファリングしたり、stdoutを端末に送信したりできます。
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"
)"
その後、出力を解析しますか?