bash サブプロセスの終了ステータス

bash サブプロセスの終了ステータス

私は経験的に次のことを発見しました:

# someCommand; echo $?
1
# bash -c someCommand; echo $?
0

常に 0 ではなく、bash -c someCommandの終了ステータスを返すことを期待しています。someCommand

これはバグですか、それとも設計上の機能ですか? 元の終了ステータスを簡単に取得するにはどうすればいいですか?

答え1

bashこれは、 ではなく、コマンドの終了ステータスを取得しているためですsomeCommand

bashが実行されsomeCommand、終了します。 の終了ステータスは、someCommand呼び出した bash シェルが終了した後に失われます。

関連情報