Linuxで複数のコマンドを1行で実行する際に以下のようにパイプを用いることがあると思います。
しかしこの方法だと戻り値は最後に実行したコマンドの戻り値が表示されてしまいます。
【コマンドをパイプした際の実行例】(bashの場合)
# <コマンド1> | <コマンド2>| <コマンド3>
# echo $?
<コマンド3>の戻り値が表示
1行で複数同時に実行した際は[PIPESTATUS]という変数を参照すると任意の順番に実行したコマンドの戻り値を確認できます。
【2番目に実行したコマンドの戻り値を確認する例】(bashの場合)
# <コマンド1> | <コマンド2> | <コマンド3>
# echo ${PIPESTATUS[1]}
<コマンド2>の戻り値が表示
※PIPESTATUSは配列のためコマンド1の場合は${PIPESTATUS[0}、コマンド3の場合は${PIPESTATUS[2]}で確認できる