РАЗДЕЛ
about_Logical_Operators
КРАТКОЕ ОПИСАНИЕ
Описание операторов, объединяющих инструкции Windows PowerShell.
ПОЛНОЕ ОПИСАНИЕ
Логические операторы Windows PowerShell объединяют выражения и
инструкции, что позволяет проверять несколько условий в одном
выражении.
Например, в следующем выражении операторы and и or объединяют три
условные инструкции. Результатом оценки условия этой инструкции
является true, только если значение $a превышает значение $b, и
значение любой из этих переменных составляет менее 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
Windows PowerShell поддерживает следующие логические операторы:
Оператор Описание Пример
-------- ------------------------------ -------------------------
-and Логический оператор "И". (1 -eq 1) -and (1 -eq 2)
Возвращает TRUE, только если False
результатом оценки условий
обеих инструкций является TRUE.
-or Логический оператор "ИЛИ". (1 -eq 1) -or (1 -eq 2)
Возвращает TRUE, если True
результатом оценки условий
хотя бы одной из двух инструкций
является TRUE
-xor Логический оператор "исключающее (1 -eq 1) -xor (2 -eq 2)
ИЛИ". Возвращает TRUE, только False
если для одной инструкции
результатом оценки условия
является TRUE, а для д
ругой - FALSE.
-not Логический оператор "НЕ". -not (1 -eq 1)
Изменяет результат оценки False
условия последующей инструкции
на противоположный.
! Логический оператор "НЕ". !(1 -eq 1)
Изменяет результат оценки False
условия последующей инструкции
на противоположный
(то же, что и -not)
Примечание. В приведенных выше примерах также используется
оператор проверки равенства (-eq). Дополнительные
сведения см. в разделе about_Comparison_Operators.
В этих примерах также используются логические значения
целых чисел. Целое число 0 имеет логическое значение FALSE.
Все остальные целые числа имеют логическое значение TRUE.
Логические операторы используются со следующим синтаксисом:
<инструкция> {-AND | -OR | -XOR} <инструкция>
{! | -NOT} <инструкция>
Инструкции, в которых используются логические операторы, возвращают
логические значения (TRUE или FALSE).
В логических операторах Windows PowerShell оцениваются только те
условия инструкций, которые необходимы для проверки их
истинности. Если истинность левого операнда в инструкции с
оператором and имеет значение FALSE, истинность правого операнда не
проверяется. Если истинность левого операнда в инструкции с
оператором or имеет значение TRUE, истинность правого операнда не
проверяется. Таким образом, эти инструкции можно использовать так же,
как инструкцию If.
СМ. ТАКЖЕ
about_Operators
Compare-Object
about_Comparison_operators
about_If