about_Logical_Operators
Краткое описание
Описывает операторы, которые подключают инструкции в PowerShell.
Подробное описание
Логические операторы PowerShell подключают выражения и операторы, что позволяет использовать одно выражение для проверки нескольких условий.
Например, следующая инструкция использует оператор и оператор или оператор для подключения трех условных инструкций. Оператор имеет значение true, только если значение $a больше значения $b, а $a или $b меньше 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
PowerShell поддерживает следующие логические операторы.
Логическое И (
-and
) — TRUE, если оба оператора имеют значение TRUE.(1 -eq 1) -and (1 -eq 2) # Result is False
Логическое ИЛИ (
-or
) — TRUE, если любая инструкция имеет значение TRUE.(1 -eq 1) -or (1 -eq 2) # Result is True
Логическое ЭКСКЛЮЗИВНОЕ ИЛИ (
-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
.
См. также
PowerShell