プログラミングをするときに
java とか C++ では
&&と||は論理演算子になります
&&は And
|| は OR です
しかし、シェルスクリプトでは
||
はリスト演算子になり
直前に実行したコマンドが異常終了や失敗したときに
直後のコマンドを実行します
よく使うのは
ping で生死確認して
反応なし、つまりサーバーダウンなら
メールを送信するというものです
また、&& も意味が違っていて
直前に実行したコマンドが成功した場合に
直後のコマンドを実行します
&&は||の逆になります