10

このコードは.shスクリプトで見つかりました。

 (test -x "$1" || which "$1") 

この演算子||はどういう意味ですか?

4

3 に答える 3

23

これは、短絡評価を伴うブール値「or」と同等であり、最初のコマンドが「false」に対応する値を返した場合にのみ2番目のコマンドを実行します。例えば:

false || echo "foo"

「foo」をエコーし​​ますが、

true || echo "foo"

何も印刷しません。&&オペレーターは無料の操作を提供します。

于 2012-11-25T16:53:32.397 に答える
8

その意味は:

最初のコマンドが成功した場合、2番目のコマンドは実行されません

于 2012-11-25T16:54:08.717 に答える
1

ダブルパイプが行うことは、最初のコマンドを実行することです。成功した場合は実行を停止し、2番目のコマンドは実行されません。

&&の反対です。

于 2012-11-25T16:54:39.883 に答える