РАЗДЕЛ 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