about_Logical_Operators

簡短描述

描述在 PowerShell 中連接語句的運算子。

詳細描述

PowerShell 邏輯運算符會連接運算式和語句,讓您能夠使用單一表達式來測試多個條件。

例如,下列語句會使用 和運算符和 或運算符來連接三個條件語句。 只有當$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) - 當只有一個語句為 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 邏輯運算符只會評估判斷語句真值所需的語句。 如果包含和運算子的語句中的左操作數為 FALSE,則不會評估右操作數。 如果包含 或語句的語句中的左操作數為TRUE,則不會評估右操作數。 因此,您可以使用與使用 語句相同的方式使用這些 If 語句。

另請參閱