違いは何ですか
echo "Hello " ; echo "world"
そして
echo "Hello " && echo "world"
どちらも互いに2つのコマンドを実行しているようです。
ベストアンサー1
echo "Hello" ; echo "world"
echo "world"
前のコマンドの終了状態に関係なく、コマンドが順次実行されることを示しますecho "Hello"
。つまり、echo "world"
前のコマンドが成功したかどうかに関係なく実行されますecho "Hello"
。
の場合、echo "Hello" && echo "world"
最初のコマンド()が成功した場合(つまり状態0で終了した場合)にのみ実行されますecho "world"
。echo "Hello"
これは…段落評価。
次の例は、シェルがさまざまな演算子を使用してコマンドチェーンを処理する方法を示しています。
$ false ; echo "OK"
OK
$ true ; echo "OK"
OK
$ false && echo "OK"
$ true && echo "OK"
OK
$ false || echo "OK"
OK
$ true || echo "OK"
$
最後のケースはOK
ショートして印刷されませんでしたtrue
。
簡単に言えば、;
区切り文字であり、論理&&
ANDであり、||
論理ORです(詳しくはお読みください)。ここ)。