Bash スクリプトの論理和演算子

Yahya Irmak 2023年1月30日
  1. Bash の論理 OR 演算子(||
  2. ブール値以外の論理 OR 演算子(||
  3. Bash スクリプティングで論理 OR 演算子(||)を使用する
Bash スクリプトの論理和演算子

この記事では、論理 OR 演算子(||)とその仕組みについて説明します。また、Bash スクリプトでどのように使用できるかの例も示します。

Bash の論理 OR 演算子(||

論理 OR 演算子||複数の値を処理します。これは通常、ブール値とともに使用され、ブール値を返します。オペランドの少なくとも 1つが true の場合、true を返します。すべての値が false の場合、false を返します。

いくつか例を挙げましょう。

True  || False --> True
False || True  --> True
True  || True  --> True
False || False --> False

ブール値以外の論理 OR 演算子(||

論理 OR 演算子(||)が文字列や数値などの非ブール値で使用されている場合、戻り値はブール値にはなりません。以下の例を考えてみましょう。

param1 || param2 || param3

param1 のブール値が true の場合、このオペランドの値を返し、他のオペランドは無視されます。それ以外の場合は、param2 がチェックされます。

ブール値が true の場合、結果は param2 の値になり、残りのオペランドは無視されます。このプロセスは、最後のオペランドまで続きます。

最後のオペランドのブール値も true でない場合、結果は最後のオペランドの値になります。

次の式のブール値は false です。残りは true です。

  • 0
  • NaN
  • null
  • undefined
  • ""''(空の文字列)

非ブール値の例を挙げましょう。

1   || 0   --> 1
""  || 1   --> 1
""  || 0   --> 0
1   || "x" --> 1
"x" || 1   --> "x"

ブール値以外の OR オペランド

Bash スクリプティングで論理 OR 演算子(||)を使用する

論理 OR 演算子(||)は、Bash スクリプトでも同じです。次に、Bash スクリプト構文を使用して例を調べます。

if [ 1 -eq 2 ] || [ 1 -eq 1 ]; then
        echo "The result of the operation is true"
else
        echo "The result of the operation is false"
fi

上記の if ブロックでは、オペランドは論理 OR 演算子(||)に与えられます。12 は等しくないため、最初の比較では結果は false になります。

2 番目の比較では 2つの値が同じであるため、それらは等しく、結果として true になります。したがって、私たちのプロセスは false ||になります true。この操作は true を返し、最初の echo コマンドは上記で説明したように実行されます。

Bash スクリプトの OR オペランド

この操作には、-o フラグを使用することもできます。

if [ 1 -eq 2 -o 3 -eq 4 ]; then
        echo "The result of the operation is true"
else
        echo "The result of the operation is false"
fi

このコードのロジックは最初のコードと同じです。ただし、今回は、両方の比較が false であるため、操作の結果は false になります。したがって、else ブロック内の echo コマンドが実行されます。

-o フラグを使用した Bash スクリプトの OR オペランド

著者: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

関連記事 - Bash Operator