Nos meus testes até agora, isso funcionou:
command && echo "$?" || echo "$?"
Apenas diz para ecoar o código de saída, se for bem-sucedido ou se falhar.
Como Sato apontou abaixo, isso é essencialmente o mesmo que:
command; echo "$?"
Uma coisa que poderia fazer o comando e / ou valer a pena é algo como:
command && echo "Success! Exit Code: $?" || echo "Failure! Exit Code: $?"
Se você precisar que seu script atue no código de saída, como é a preocupação de Olivier, não é um problema. Seu script pode ser parecido com:
command
case "$?" in;
0) echo "Command exited with: 0"
<command if good>
;;
1) echo "Command exited with: 1"
<command if bad>
;;
255) echo "Command exited with: 255" # for ssh maybe?
<command if 255>
;;
*) echo "Command exited with: >2"
<command for other exit code>
;;
esac