Сравнение powershell: о операторах сравнения — PowerShell

Содержание

Операторы сравнения в PowerShell | Заметки системного администратора

По умолчанию все операторы сравнения не являются чувствительными к регистру.
-eqEqualРавно
-neNot equalНе Равно
-geGreater than or equalБольше или Равно
-gtGreater thanБольше
-ltLess thanМеньше
-leLess than or equalМеньше или Равно
-likeWildcard comparisonИспользование символов подстановки для поиска соответствия образцу
-notlikeWildcard comparisonИспользование символов подстановки для поиска несоответствия образцу
-matchRegular expression comparisonИспользование регулярных выражений для поиска соответствия образцу
-notmatchRegular expression comparisonИспользование регулярных выражений для поиска несоответствия образцу
-replaceReplace operatorЗаменяет часть или все значение слева от оператора
-containsContainment operatorОпределение, содержит ли значение слева от оператора значение справа. В отличие от предыдущих операторов, результатом является булево значение
-notcontainsContainment operatorОпределение того, что значение слева от оператора не содержит значение справа. Результатом является булево значение

 

Для сравнения с учетом регистра к команде подставляется префикс «c». Для примера, оператор -eq с зависимостью от регистра изменяется на «-ceq».

Для явно заданного независящего от регистра сравнения к команде подставляется префикс «i». Пример: оператор -replace без зависимости от регистра будет -ireplace

Типы

-isЯвляется типом
-isnotНе является типом
-asКак тип, без ошибки если возникает неудача преобразования
Логические операторы PowerShell
-andОба условия должны быть истины, чтобы выражение было истинно
-orОдно или оба условия должны быть истины, чтобы выражение было истинно
-xorОдно условие должно быть истинно, а второе должно иметь значение «ложь», чтобы выражение было истинно
-notУказанные условия должны иметь значение «ложь», чтобы выражение было истинно
!Указанное условие должно иметь значение «ложь», чтобы выражение было истинно

Оригинал статьи

Сайт работает на WordPress

Сравнение Windows PowerShell и командной строки

Что такое командная строка Windows?

Что такое Windows PowerShell?

Доступ к командной строке и Windows PowerShell

Сравнение PowerShell и командной строки

PowerShell или командная строка, что делать дальше?

Начиная с Windows 7 и заканчивая Windows 10, Microsoft предоставляла опции командной строки Windows и Windows PowerShell. Это два интерфейса командной строки, которые помогают пользователям напрямую взаимодействовать с операционной системой. Вы можете использовать большинство команд DOS в интерфейсе командной строки.

По теме: 10 команд командной строки Windows, которые вы должны знать.

Наличие этих двух командных оболочек может сбивать с толку большинство пользователей Windows. Интересно, что PowerShell и командная строка имеют похожий внешний вид, и большинство их команд одинаковы. Цель этой статьи – провести четкую грань между двумя инструментами, а также обсудить, что преобладает над другим.

Командная строка против Windows PowerShell

Что такое командная строка Windows?

Командная строка Windows (или сокращенно cmd) – это командная оболочка, основанная на операционной системе MS-DOS 1980 года. Он присутствует в ОС Microsoft, начиная с Windows NT. Это просто приложение Win32, которое помогает пользователям взаимодействовать с операционной системой с помощью текстовых инструкций (команд) и параметров.

Пользователи полагаются на возможности CMD для взаимодействия со всеми другими объектами и приложениями Win32. Это помогает выполнять различные задачи в Windows, например:

  • Запускайте различные приложения и утилиты.
  • Активировать / деактивировать важные настройки Windows.
  • Создавайте или изменяйте скрипты для автоматизации задач.
  • Диагностировать и исправлять различные проблемы с ОС, например, сканирование на наличие ошибок.

Командная строка

Хотя интерфейс командной строки широко используется для выполнения вышеуказанных и других задач, он имеет определенные ограничения.

  • Он не может получить доступ к большинству элементов системного администрирования Windows.
  • Среди других недостатков он не идеален для создания сложных скриптов.

Что такое Windows PowerShell?

Windows PowerShell – это и командная оболочка, и язык сценариев, обеспечивающий более глубокую интеграцию с ОС Windows. Он основан на платформе Microsoft . Net, обеспечивая доступ к различным уже существующим инструментам и функциям. Вы можете легко создавать лучшие команды и сложные сценарии с помощью PowerShell.

Он использует текстовые команды, известные как командлеты и язык программирования C #, помогая пользователю более эффективно управлять инфраструктурой Windows. Проще говоря, PowerShell сочетает в себе функции командной строки с мощной средой сценариев для упрощения администрирования системы.

Windows PowerShell

Помимо выполнения задач, подобных командной строке, PowerShell позволяет пользователям и системным администраторам выполнять следующие действия.

  • Удаленный доступ к файловой системе, реестру и WMI (инструментарию управления Windows).
  • Создавайте сложные сценарии с множеством условий.
  • Удаленное выполнение и автоматизация задач с помощью многоразовых скриптов.
  • Командный трубопровод среди прочего.

Доступ к командной строке и Windows PowerShell

Вы можете получить доступ к командной строке следующими способами:

  • Нажмите сочетания клавиш «Win + R», чтобы открыть командную строку. Введите CMD и нажмите Enter, чтобы открыть командную строку.
  • Введите CMD в поле поиска Windows или Cortana Search и выберите классическое приложение командной строки.
  • Щелкните правой кнопкой мыши кнопку «Пуск» и выберите «Командная строка» или «Командная строка (администратор)». Помните, что вам нужно запускать командную строку с правами администратора, чтобы выполнять определенные действия.

Используйте один из следующих вариантов, чтобы открыть Windows PowerShell.

  • Введите powershell в поле поиска и выберите классическое приложение Windows PowerShell.
  • Нажмите «Win + R», чтобы открыть окно «Выполнить». Введите powershell и нажмите Enter.
  • Щелкните правой кнопкой мыши кнопку «Пуск» или нажмите клавиши «Win + X» и выберите вариант Windows PowerShell или Windows PowerShell (Admin).

Если щелкнуть правой кнопкой мыши кнопку «Пуск» или нажать клавиши «Win + X», Windows покажет либо командную строку, либо параметры, связанные с Windows PowerShell. Вы можете изменить настройки, чтобы выбрать, какой вариант вы хотите отображать в меню.

  • Нажмите клавиши «Win + I», чтобы открыть приложение «Настройки Windows».
  • Нажмите на опцию «Персонализация» и перейдите в раздел «Панель задач».
  • Включите или отключите параметр «Заменить командную строку Windows PowerShell …… ..».

Заменить командную строку на PowerShell

Сравнение PowerShell и командной строки

Хотя вы можете выполнять большинство функций командной строки в Windows PowerShell, они не совпадают. Вот некоторые различия между двумя интерфейсами.

  • В то время как Cmd использует команды DOS, PowerShell использует команды, известные как командлеты, которые представляют собой независимые программные объекты, позволяющие получить доступ к основным параметрам администрирования в Windows. Эти параметры недоступны из Cmd, что означает, что пользователи должны перемещаться по графическому интерфейсу, чтобы получить к ним доступ.
  • Cmd – это просто система оболочки, которая ограничивает пользователей выполнять только простые и базовые сценарии для выполнения командного файла. Однако PowerShell – это и оболочка, и среда сценариев, которая поддерживает создание больших и сложных файлов для управления системой Windows.
  • Командная строка не предназначена для системного администрирования, и пользователям требуются дополнительные утилиты для расширения ее функциональности. Напротив, в Windows PowerShell есть множество командлетов, которые упрощают жизнь системным администраторам. Он позволяет выполнять широкий спектр задач и автоматизацию, включая управление пользователями и разрешениями, конфигурации безопасности, извлечение данных и администрирование Active Directory.
  • Еще одна интересная функция PowerShell, которой не хватает в Cmd, – это «Псевдонимы». Это очень важная функция, которая позволяет пользователям настраивать собственные имена для различных сценариев или командлетов. PowerShell использует псевдонимы для интерпретации старых команд DOS и запуска их как командлетов PowerShell. Например, псевдоним для «cd» (DOS) – «Set-Location» (командлет).

Псевдоним в Windows PowerShell

Связанный: Что такое драйверы в Windows и как устранить проблемы с драйверами?

  • PowerShell также поддерживает каналы (аналогично переменным), которые позволяют связывать несколько командлетов и обмениваться данными ввода-вывода с другими командлетами. Эта функция позволяет пользователям разрабатывать сложные сценарии, которые могут передавать параметры для использования в другом командлете.

Кроме того, PowerShell предоставляет другие расширенные функции, в том числе:

  • Windows PowerShell ISE – интерактивная среда сценариев, которая помогает в управлении сценариями PowerShell.

Интегрированная среда сценариев Windows PowerShell

  • Secure Shell (SSH) – протокол для реализации зашифрованных соединений между удаленными системами Windows.
  • Управление пакетами – инструмент для мониторинга программного обеспечения в вашей системе.
PowerShell или командная строка, что делать дальше?

Если вы полагаетесь на Cmd только для выполнения основных команд, таких как sfc, ipconfig и т. П., Это все равно удобный инструмент. Для системных администраторов и опытных пользователей, которым необходимо выполнять сложные задачи или управлять удаленными системами, PowerShell – лучший выбор. Это экономит время системных администраторов, предоставляя доступ к более глубокой автоматизации системных задач. Однако пользователям Windows рекомендуется начать знакомство с последним, особенно после того, как Microsoft сделала оболочку по умолчанию для Windows 10. Кроме того, PowerShell превосходит старый Cmd, поскольку он предоставляет все возможности Cmd и многое другое.

Источник записи: www.webnots.com

Операторы сравнения PowerShell — Javatpoint

следующий →
← предыдущая

Операторы сравнения используются в PowerShell для сравнения значений. По умолчанию все операторы сравнения чувствительны к регистру. Эти операторы помогают нам находить, тестировать, сравнивать, изменять и заменять данные и информацию.

PowerShell поддерживает следующие операторы сравнения:

  1. Операторы равенства
  2. Операторы сопоставления
  3. Операторы содержания
  4. Сменные операторы
  5. Тип Операторы

Операторы равенства

Операторы равенства — это те операторы, которые проверяют равенство двух значений, а также проверяют, что одно значение больше или меньше другого значения.

Ниже приведен список операторов сравнения на равенство:

  1. -экв (равный)
  2. -ne (не равно)
  3. -gt (Больше чем)
  4. -ge (больше или равно)
  5. -lt (Меньше)
  6. -le (меньше или равно)

-экв (равный)

Если значения равны, этот оператор возвращает логическое значение TRUE , иначе False .

Пример: В следующем примере показано, как использовать оператор -eq (равно):

$а=10
$б=10
($а-экв $б)

Последняя команда в этом примере отображает логическое значение TRUE , потому что оба значения переменных одинаковы.

-ne (Равный)

Если значения не равны, этот оператор возвращает логическое значение TRUE , иначе False .

Пример: В следующем примере показано, как использовать оператор -eq (равно):

$а=10
$б=10
($a-ne $b)

Последняя команда в этом примере отображает логическое значение FALSE , так как значения обеих переменных совпадают.

-gt (Больше чем)

Если значение переменной в левой части оператора больше, чем значение переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , в противном случае возвращает False .

Пример: В следующем примере показано, как использовать оператор -gt (больше):

$а=20
$б=10
($a-gt$b)

Последняя команда в этом примере отображает логическое значение TRUE , поскольку значение переменной $a больше, чем $b .

-ge (больше или равно)

Если значение переменной в левой части оператора больше или равно значению переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , в противном случае возвращает False .

Пример: В следующем примере показано, как использовать оператор -ge (больше или равно):

$а=10
$б=10
($a-ge$b)

Последняя команда в этом примере отображает логическое значение TRUE , поскольку значения обеих переменных $a и $b одинаковы.

-л (менее)

Если значение переменной в левой части оператора меньше значения переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , в противном случае возвращает Ложь .

Пример: В следующем примере показано, как использовать оператор -lt (меньше чем):

$а=10
$б=20
($a-lt$b)

Последняя команда в этом примере отображает логическое значение TRUE , поскольку значение переменной $a меньше, чем $b .

-le (меньше или равно)

Если значение переменной в левой части оператора меньше или равно значению переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , иначе возвращает False .

Пример: В следующем примере показано, как использовать оператор -le (меньше или равно):

$а=10
$б=10
($а -ле $б)

Последняя команда в этом примере отображает логическое значение TRUE , поскольку значения обеих переменных $a и $b одинаковы.

Операторы сопоставления

Операторы сопоставления — это те операторы, которые сравнивают строки, используя регулярные выражения или подстановочные знаки, чтобы найти совпадение.

Ниже приведен список соответствующих операторов:

  1. — как
  2. — не похоже на
  3. — соответствует
  4. — не соответствует

-подобный

Оператор -like возвращает логическое значение TRUE , если строки сопоставляются с использованием подстановочных знаков.

Примеры: Следующие примеры описывают использование оператора -like:

Пример 1:

$а=»PowerShell»
$b=»PowerShell»
$a — как $b

Последняя команда в примере 1 возвращает значение TRUE , поскольку обе строки одинаковы.

Пример 2:

$а=»PowerShell»
$b=»*Оболочка»
$a — как $b

Последняя команда в этом примере возвращает значение TRUE , поскольку в переменной 9 присутствует строка « Shell ».0008 $a .

-неподобие

Оператор -notlike возвращает логическое значение TRUE , если строки не совпадают с использованием подстановочных знаков.

Примеры: Следующие примеры описывают использование оператора -notlike:

Пример 1:

$а=»PowerShell»
$b=»окна»
$a — не похоже на $b

Последняя команда в приведенном выше примере возвращает значение TRUE , поскольку строки не совпадают.

Пример 2:

$а=»PowerShell»
$b=»*Оболочка»
$a — не похоже на $b

Последняя команда в этом примере возвращает значение False , поскольку в переменной $a присутствует строка « Shell ».

-матч

Оператор -match возвращает логическое значение TRUE , если строки сопоставляются с использованием подстановочных знаков. Если ввод представляет собой список, оператор -match возвращает совпадающие элементы списка.

Пример:

$a=»Январь», «Февраль», «Март», «Апрель»
$b=»Фев»
$a — соответствует $b

Последняя команда в этом примере возвращает строку « февраль «.

— не соответствует

Оператор -notmatch возвращает логическое значение True , если строки не совпадают с использованием подстановочных знаков.

Примеры: Следующие примеры описывают использование оператора -notmatch:

Пример 1:

$а=»PowerShell»
$b=»элл»
$a — не соответствует $b

Последняя команда в этом примере возвращает значение FALSE , так как строка « ell » присутствует в строке переменной $a .

Пример 2:

$a=»Январь», «Февраль», «Март», «Апрель»
$b=»Фев»
$a — не соответствует $b

Последняя команда в этом примере возвращает следующие строки:

 января
Маршировать
апреля
 

Операторы содержания

Операторы включения аналогичны операторам равенства. Эти операторы всегда возвращают логическое значение True , когда значение в правой части оператора существует в наборе значений в левой части оператора, в противном случае возвращается False .

Список операторов содержания:

  1. -содержит
  2. — не содержит
  3. — в
  4. — не в

— Содержит

Этот оператор возвращает логическое значение TRUE , если значение в правой части оператора существует в наборе значений в левой части оператора.

Пример:

$a=»Январь», «Февраль», «Март», «Апрель»
$b=»Март»
$a — содержит $b

Последняя команда в этом примере возвращает True .

-не содержит

Этот оператор возвращает логическое значение TRUE , если значение в правой части оператора не существует в наборе значений в левой части оператора.

Пример:

$a=»Январь», «Февраль», «Март», «Апрель»
$b=»Март»
$a — не содержит $b

Последняя команда в этом примере возвращает False .

Этот оператор возвращает логическое значение TRUE , если значение в левой части оператора существует в наборе значений в правой части оператора.

Пример:

$b=»Март»
$b=»Февраль», «Март», «Апрель»
$a -in $b

Последняя команда в этом примере возвращает True .

-не в

Этот оператор возвращает логическое значение TRUE , когда значение в левой части оператора не существует в наборе значений в правой части оператора.

Пример:

$b=»Март»
$b=»Февраль», «Март», «Апрель»
$a — не в $b

Последняя команда в этом примере возвращает False .

Сменный оператор

Оператор замены (-replace) — это оператор, который заменяет все или часть значения указанным значением с помощью регулярного выражения.

Следующий оператор представляет собой синтаксис оператора -replace :

<ввод> <оператор> <оригинал> , <замена>

В этом синтаксисе используются два аргумента: исходный и замещающий. Они разделены запятой.

Пример:

$a=»Операционная система Windows и Linux»
$a — заменить «Linux» на «MacOS»

Вторая команда в этом примере отображает следующий вывод:

 Операционная система Windows и MacOS
 

Операторы сравнения типов

Операторы сравнения типов — это те операторы, которые возвращают логическое значение TRUE , когда значение в левой части оператора указано как тип Microsoft .NET, в противном случае возвращает False .

PowerShell поддерживает следующие два оператора сравнения типов:

  1. — это
  2. — не

-есть

Этот оператор возвращает True , когда значение в левой части оператора указано как тип Microsoft .NET.

Пример:

$а=1
$a — это [число]

Вторая команда в примере отображает логическое значение True , поскольку значение переменной $a является целым числом .

— не

Оператор -isnot возвращает логическое значение True , если значение в левой части оператора не указано как тип Microsoft .NET.

Пример:

$а = «1»
$a — это [число]

Вторая команда в примере отображает логическое значение True , поскольку значение переменной $a представляет собой строку .


Следующая темаЛогические операторы

← предыдущая
следующий →

Операторы сравнения в PowerShell | Типы операторов сравнения

В этой статье мы подробно рассмотрим различные операторы сравнения в PowerShell. Операторы сравнения используются для сравнения, поиска и изменения двух или более значений. Вы также можете использовать операторы сравнения в условиях для сопоставления и сравнения значений.

Операторы сравнения

Windows PowerShell использует указанные ниже операторы сравнения, и по умолчанию они нечувствительны к регистру. Чтобы выполнить операцию с учетом регистра, просто нужно ввести «c» перед приведенными ниже операторами. Например, -clike, -cne, -ceq и т. д.

-eq Равно
-не Не равно
-gt Больше
-ge Больше или равно
Менее
-ле Меньше или равно
подобный Проверяет соответствие части строки (сравнение с подстановочными знаками)
-неподобие Проверяет, не совпадает ли часть строки (сравнение с подстановочными знаками)
— совпадение Сравнение регулярных выражений
— не соответствует Сравнение регулярных выражений
-содержит Оператор содержания
— не содержит Оператор без содержания
В операторе
— не в Не в операторе
-Заменить Заменяет шаблон строки

Примеры реализации операторов сравнения

Вот несколько примеров операторов сравнения, приведенных ниже с примерами:

1.

–eq: равно

Этот оператор используется для проверки равенства между значениями. Они должны точно совпадать, и это не зависит от регистра. Вывод будет True или False. Например,

Вы также можете сравнить два разных типа данных.

Вы также можете сравнивать несколько значений с одним значением.

Если вы используете оператор –ceq, то сравнение будет чувствительным к регистру.

2. –ne: не равно

Противоречит операции «равно». Если значение совпадает, то оно вернет FALSE, иначе вернет TRUE.

Для нескольких значений:

3. –gt: больше

Сравнивает значение левой части с правой стороной, и результат будет ИСТИНА или ЛОЖЬ в зависимости от значений. В приведенном ниже примере он сравнивает 5 с 6 и проверяет, больше ли оно 6, и дает ответ ЛОЖЬ.

Когда вы сравниваете два символа, он проверяет их значение ASCII и предоставляет результаты на его основе. Значение ASCII «а» равно 97, а «с» равно 99, поэтому «с» больше, чем «а». В результате второе предложение ИСТИННО.

Если вы сравните несколько символов вместе, то он проверит значение ASCII первых символов с обеих сторон и предоставит соответствующие результаты. Например,

В приведенном выше первом предложении значение ASCII «d» больше, чем «a», а во втором предложении значение ASCII «a меньше, чем «b». Для сравнения нескольких значений.

4. –ge: больше равно

Проверяет, больше или равно значение левой стороны значению правой стороны.

5. –lt: Меньше

Проверить, меньше ли значение левой стороны значения правой стороны.

6. –le: Меньше или равно

Проверяет, меньше ли значение левой стороны, чем равное значению правой стороны.

7. – Нравится

Сопоставляет левую часть значения с правым значением с подстановочным знаком (*).

Подстановочный знак (*), при применении проверяет, содержится ли часть в строке или нет. Если он применяется после определенного значения (например, This *), то он проверяет, существует ли это слово + строка-преемник или нет. В первом примере.

  • Слово: Это
  • Строка преемника: Powershell

Если применяется перед определенным словом, то проверяется, существует ли конкретное слово + строка приоритета или нет. Во втором примере.

  • Слово: Powershell
  • Предыдущая строка: Это

В третьем примере подстановочный знак (*) применяется после слова «Powershell», и слово совпадает, но последующая строка отсутствует, поэтому на выходе — False. В четвертом примере подстановочный знак (*) применяется с обеих сторон, поэтому он проверяет, существует ли строка до или после него, другими словами, упомянутое слово является частью этой строки. Итак, здесь вывод TRUE.

8. –NotLike

Противопоставляется оператору Like, но определение для подстановочного знака остается тем же, и меняется только вывод.

9.

–Match

Соответствует строке с использованием регулярного выражения. Когда вход является скалярным, он автоматически заполняет переменную $matches.

$ Матчи

Имя Значение

-––

0 Прибытие

, чтобы соответствовать, по крайней мере, любой из персонажей, поместите их в [].

В приведенном выше примере соответствует символ «c». Чтобы соответствовать хотя бы одному из символов в непрерывном диапазоне [диапазон].

Здесь символы от n до r [без учета регистра] будут сравниваться со строкой, а «o» и «p» совпадают. Следовательно, вывод ИСТИНА.

10. –NotMatch

Противоречит оператору Match. Если совпадение найдено, возвращается false или наоборот.

Имя Значение

0.0662

Сообщает, включает ли коллекция эталонных значений точное (без учета регистра) одиночное значение. Если да, то возвращает TRUE, иначе FALSE.

Синтаксис:

<Эталонные значения> -Содержит <Тестовое значение>

Приведенный выше вывод является ЛОЖНЫМ, поскольку левая сторона содержит два значения. Но если вы сохраните их в переменной и сопоставите их, вывод будет TRUE.

Для операций с учетом регистра используйте оператор –ccontains.

12. —notContains: оператор включения (в отличие от contains)

Если тестовое значение точно совпадает с набором эталонных значений, то выводится ЛОЖЬ. В противном случае вывод TRUE.

13. -in

Аналогичен оператору Contain, только синтаксис изменен. -в оператор был введен в Powershell 3.0. Если тестовое значение соответствует эталонным значениям, возвращается значение TRUE, в противном случае — FALSE.

Синтаксис:

-in

В приведенном выше примере «Shell» не совсем соответствует Powershell.

14. –notin: не в операторе (в отличие от оператора -in)

Если проверочное значение точно соответствует эталонным значениям, возвращается ЛОЖЬ, в противном случае – ИСТИНА.

15. – Заменить: Изменяет указанное значение

Синтаксис:

<Строка> -replace <Старое значение>,<Новое значение>

Чтобы заменить значение в переменной

Примечание: Есть два совпадающих значения «есть», поэтому было заменено два значения.

16. Другие аналогичные операторы

Существуют и другие аналогичные операторы, упомянутые ниже.

а. Побитовые операторы

-bAnd Побитовое И
-бор Побитовое ИЛИ (включительно)
-bXили Побитовое ИЛИ (исключающее)
-bНе Побитовое НЕ
-шл Сдвиг влево
-шр Сдвиг вправо

2.