私は経験的に次のことを発見しました:
# someCommand; echo $?
1
# bash -c someCommand; echo $?
0
常に 0 ではなく、bash -c someCommand
の終了ステータスを返すことを期待しています。someCommand
これはバグですか、それとも設計上の機能ですか? 元の終了ステータスを簡単に取得するにはどうすればいいですか?
答え1
bash
これは、 ではなく、コマンドの終了ステータスを取得しているためですsomeCommand
。
bash
が実行されsomeCommand
、終了します。 の終了ステータスは、someCommand
呼び出した bash シェルが終了した後に失われます。