なぜ期待どおりに動作しないのですか?
$ false && { echo ok; echo ok; } && { echo notOK; }
これはない:
$ false && { echo ok; echo ok; } || { echo notOK; }
私が見えなかった!
答え1
&&
動作方法は次のとおりです||
。
&&
左が「真」の値(0)で終わると、右が実行されます。
||
左が「false」値(!0)で終わると、右が実行されます。
false && { echo ok; echo ok } || { echo notOK; }
処理方法は次のとおりです。
false
1を返す&&
` { echo ok; echo ok} '左が0ではないため、実行されません。||
{ echo notOK; }
左がゼロではないので実行されます。