Коды подстановки и завершения процесса Bash

Я бы хотел изменить следующее:

git status --short && (git status --short | xargs -Istr test -z str)

что дает мне желаемый результат - зеркальное отображение вывода на стандартный вывод и выполнение проверки нулевой длины результата во что-то более близкое к:

git status --short | tee> (xargs -Istr test -z str)

, который, к сожалению, возвращает код выхода tee (всегда ноль).

Есть ли способ элегантно получить код выхода замененного процесса?

[РЕДАКТИРОВАТЬ]

На данный момент я использую следующее , он предотвращает выполнение одной и той же команды дважды, но, кажется, просит чего-то лучшего:

OUT = $ (git status --short) && echo "$ {OUT}" && test -z "$ {OUT}"

6
задан jodell 29 September 2011 в 18:09
поделиться