![하위 명령의 표준 출력을 버퍼링하는 동안 종료 코드 가져오기](https://linux55.com/image/168434/%ED%95%98%EC%9C%84%20%EB%AA%85%EB%A0%B9%EC%9D%98%20%ED%91%9C%EC%A4%80%20%EC%B6%9C%EB%A0%A5%EC%9D%84%20%EB%B2%84%ED%8D%BC%EB%A7%81%ED%95%98%EB%8A%94%20%EB%8F%99%EC%95%88%20%EC%A2%85%EB%A3%8C%20%EC%BD%94%EB%93%9C%20%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0.png)
명령에서 표준 출력을 얻고 종료 코드도 얻고 싶습니다. 다음을 사용하여 모든 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"
)"
그런 다음 출력을 구문 분석합니까?