逆にbashで失敗したら実行するには&&ではなくて何を使う?

Bashで前のコマンドが失敗した場合に実行するには、|| 演算子を使用します。|| 演算子は、前のコマンドが終了ステータス 0 以外(つまり、エラーが発生した場合)の場合に次のコマンドを実行します。

具体的な例を挙げると、command1 || command2 とすると、command1 が終了ステータス 0 以外(エラー)で終了した場合、command2 が実行されます。

例えば:

bash
echo "Hello" || echo "World"

この場合、echo "Hello" は必ず成功するので、echo "World" は実行されません。逆に、次の例ではエラーを発生させます:

bash
false || echo "This command runs if the previous one fails"

上記の例では、false コマンドは常に終了ステータス 1(エラー)を返すため、echo コマンドが実行されます。

未分類

Posted by ぼっち