次の方法で共有


about_Logical_Operators

簡単な説明

PowerShell でステートメントを接続する演算子について説明します。

詳細な説明

PowerShell 論理演算子は式とステートメントを接続するため、1 つの式を使用して複数の条件をテストできます。

たとえば、次のステートメントでは、and 演算子と or 演算子を使用して、3 つの条件ステートメントを接続します。 ステートメントは、$aの値が$bの値より大きく、$aまたは$bが 20 未満の場合にのみ true です。

($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))

PowerShell では、次の論理演算子がサポートされています。

  • 論理 AND (-and) - 両方のステートメントが TRUE の場合は TRUE。

    (1 -eq 1) -and (1 -eq 2)   # Result is False
    
  • 論理 OR (-or) - いずれかのステートメントが TRUE の場合は TRUE。

    (1 -eq 1) -or (1 -eq 2)    # Result is True
    
  • 論理 EXCLUSIVE OR (-xor) - 1 つのステートメントのみが TRUE の場合は TRUE

    (1 -eq 1) -xor (2 -eq 2)   # Result is False
    
  • 論理ではない (-not) または (!) - 次のステートメントを否定します。

    -not (1 -eq 1)             # Result is False
    !(1 -eq 1)                 # Result is False
    

前の例では、等しい比較演算子 -eqも使用しています。 詳細については、「 about_Comparison_Operators」を参照してください。 この例では、整数のブール値も使用します。 整数 0 の値は FALSE です。 その他のすべての整数の値は TRUE です。

論理演算子の構文は次のとおりです。

<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>

論理演算子を使用するステートメントは、ブール値 (TRUE または FALSE) の値を返します。

PowerShell 論理演算子は、ステートメントの真偽値を判断するために必要なステートメントのみを評価します。 and 演算子を含むステートメントの左オペランドが FALSE の場合、右オペランドは評価されません。 or ステートメントを含むステートメントの左オペランドが TRUE の場合、右オペランドは評価されません。 その結果、これらのステートメントは、 If ステートメントと同じ方法で使用できます。

関連項目