Больше или равно powershell: Операторы Windows PowerShell | Windows IT Pro/RE
Содержание
Powershell — Операторы сравнения | TipoIT
Как и в любом языке программирования в PowerShell также присутствуют операторы сравнения, при чём не в обычном для людей виде знаков <, >, =
.
Вместо знаков в PowerShell используются буквы, которые обозначают сами слова сравнения, например -gt
означает Greater than (Больше)
.
Таблица операторов сравнения
Оператор | Значение | Описание |
---|---|---|
-le | Less than or equal | Меньше или равно |
-lt | Less than | Меньше чем |
-ge | Greater than or equal | Больше или равно |
-gt | Greater than | Больше чем |
-ne | Not equal | Не равно |
-eq | Equal | Равно |
-like | Wildcard comparison | Поиск по шаблону |
-notlike | Wildcard comparison | Поиск по несоответствию шаблонов |
-match | Regular expression comparison | Поиск соответствия по регулярным выражениям |
-notmatch | Regular expression comparison | Поиск несоответствия по регулярным выражениям |
-in | Containment operator | Поиск по коллекции |
-notin | Containment operator | Поиск по коллекции (не содержит) |
-replace | Replace operator | Заменяет часть или всё значение |
-is | Type | Возвращает true если объекты одинаковы |
-isnot | Type | Возвращает true если объекты неодинаковы |
le
Этот оператор означает меньше или равно и эквивалентен <=
.
5 -le 8 5 -le 5
True True
lt
Этот оператор означает меньше и эквивалентен <
.
5 -le 8
ge
Этот оператор означает больше или равно и эквивалентен >=
.
5 -ge 8 10 -ge 8 10 -ge 10
False True True
gt
Этот оператор означает больше и эквивалентен >
.
5 -gt 8 12 -gt 8
False True
ne
Этот оператор означает не равно и также может использоваться для сравнения буквенных значений.
2 -ne 2 "abc" -ne "def" "abc" -ne "abc"
False True False
eq
Этот оператор означает равно и также может использоваться для сравнения буквенных значений.
2 -eq 2 "abc" -eq "def" "abc" -eq "abc"
True False True
like
Этот оператор сопоставления и ведёт себя аналогично оператору -eq
но работает только со словами и также может принимать регулярные выражения.
"my home here" -like "home" "my home here" -like "*home*"
False True
notlike
Этот оператор сопоставления и ведёт себя аналогично оператору -ne
но работает только со словами и также может принимать регулярные выражения.
"my home here" -notlike "*home*" "my home here" -notlike "*abc*"
False True
match
Этот оператор сопоставления и ведёт себя аналогично оператору -like
только с отличием того что он не обращает внимание на место символа поиска в строке.
Также при использовании -notmatch
и -match
создаётся автоматически переменная $Matches, к которой вы можете получить доступ.
"my home here" -like "home" "my home here" -like "*home*" "my home here" -match "home" "my home here" -match "h[qoea]me"
False True True True
Используя -match
вы также можете разбивать какую-либо строку на переменные присваивая им значения слов из этого предложения используя регулярные выражения.
"I saw Helen yestrday" -match '.*\s(?<name>\w+)\s(?<date>\w+)' $Matches
Name Value ---- ----- date yestrday name Helen 0 I saw Helen yestrday
notmatch
Этот оператор сопоставления и ведёт себя аналогично оператору -notlike
только с отличием того что он не обращает внимание на место символа поиска в строке.
"my home here" -notlike "*home*" "my home here" -notlike "*abc*" "my home here" -notmatch "home" "my home here" -notmatch "h[aedb]me"
False True False True
in and notin
Этот оператор себя как оператор -like
только здесь вы можете для сравнения передать сразу коллекцию для сопоставления. Т.е. вместо того чтобы сопоставлять по одному значению вы делаете множественное сопоставление.
"avb" -in "avb", "def" "avb" -in "asd", "def", "dasd", "derwerf", "grtg"
True False
"avb" -notin "avb", "def" "avb" -notin "asd", "def", "dasd", "derwerf", "grtg"
False True
replace
Как уже понятно из названия этот оператор служит для замены значения. Например, вы можете переименовывать названия всех документов в папке используя регулярные выражения.
Пример с изменением расширения всех log файлов
в текущей директории.
Get-ChildItem *.log | Rename-Item -NewName { $_.name -replace '\.log$','.txt' }
Если вам важна чувствительность к регистру можно воспользоваться оператором -creplace
.
"my home here" -replace "home", "****" "my home here" -replace "\s(\w+)\s", " **** " "my home here" -replace "HOME", "****" "my home here" -creplace "HOME", "****"
my **** here my **** here my **** here my home here
is and isnot
Операторы сравнения типов (-is
и -isnot
) используются для определения того, относится ли объект к определенному типу. Возвращает Boolean
значение: true
или false
.
"abs" -is [int] "abs" -isnot [int] 123 -is [int] 123 -isnot [int] "abs" -is [string]
False True True False True
PowerShell: Операторы сравнения
SSH: Авторизация по ключу
PowerShell: Как создать новый файл
Просмотров: 872Комментарии: 0
How-ToPowerShell
PowerShellоператоры сравнения
Продолжаю писать себе и Вам небольшую шпаргалку по языку PowerShell. Сегодня речь пойдет о операторах сравнения.
По умолчанию все операторы сравнения не являются чувствительными к регистру.
Оператор | Name | RUS Nane |
-eq | Equal | Равно |
-ne | Not equal | Не равно |
-ge | Greater than or equal | Больше или Равно |
-gt | Greater than | Больше |
-lt | Less than | Меньше |
-le | Less than or equal | Меньше или равно |
-like | Less than or equal | Использование символов подстановки для поиска соответствия образцу |
-notlike | Wildcard comparison | Использование символов подстановки для поиска несоответствия образцу |
-match | Regular expression comparison | Использование регулярных выражений для поиска соответствия образцу |
-notmatch | Regular expression comparison | Использование регулярных выражений для поиска несоответствия образцу |
-replace | Replace operator | Заменяет часть или все значение слева от оператора |
-contains | Containment operator | Определение, содержит ли значение слева от оператора значение справа.![]() |
-notcontains | Containment operator | Определение того, что значение слева от оператора не содержит значение справа. Результатом является булево значение |
Для сравнения с учетом регистра к команде подставляется префикс «c». Для примера, оператор -eq с зависимостью от регистра изменяется на «-ceq«.
Для явно заданного независящего от регистра сравнения к команде подставляется префикс «i». Пример: оператор -replace без зависимости от регистра будет «-ireplace«
Операторы сравнения типов данных в PowerShell
Оператор | RUS Name |
-is | Является типом |
-isnot | Не является типом |
as | Как тип, без ошибки если возникает неудача преобразования |
Логические операторы сравнения в PowerShell
Оператор | RUS Name |
-and | Оба условия должны быть истины, чтобы выражение было истинно |
-or | Одно или оба условия должны быть истины, чтобы выражение было истинно |
-xor | Одно условие должно быть истинно, а второе должно иметь значение «ложь», чтобы выражение было истинно |
-not | Указанные условия должны иметь значение «ложь», чтобы выражение было истинно |
! | Указанные условия должны иметь значение «ложь», чтобы выражение было истинно |
Операторы сравнения PowerShell — Javatpoint
следующий → Операторы сравнения используются в PowerShell для сравнения значений. PowerShell поддерживает следующие операторы сравнения:
Операторы равенстваОператоры равенства — это те операторы, которые проверяют равенство двух значений, а также проверяют, что одно значение больше или меньше другого значения. Ниже приведен список операторов сравнения на равенство:
-экв (равный) Если значения равны, этот оператор возвращает логическое значение TRUE , иначе False . Пример: В следующем примере показано, как использовать оператор -eq (равно): $а=10 Последняя команда в этом примере отображает логическое значение TRUE , потому что оба значения переменных одинаковы. -ne (Равный) Если значения не равны, этот оператор возвращает логическое значение TRUE , иначе False . Пример: В следующем примере показано, как использовать оператор -eq (равно): $а=10 Последняя команда в этом примере отображает логическое значение FALSE , так как значения обеих переменных совпадают. -gt (Больше чем) Если значение переменной в левой части оператора больше, чем значение переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , в противном случае возвращает False . Пример: В следующем примере показано, как использовать оператор -gt (больше): $а=20 Последняя команда в этом примере отображает логическое значение TRUE , поскольку значение переменной $a больше, чем $b . -ge (больше или равно) Если значение переменной в левой части оператора больше или равно значению переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , в противном случае возвращает False . Пример: В следующем примере показано, как использовать оператор -ge (больше или равно): $а=10 Последняя команда в этом примере отображает логическое значение TRUE , поскольку значения обеих переменных $a и $b одинаковы. -л (менее) Если значение переменной в левой части оператора меньше значения переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , в противном случае возвращает Ложь . Пример: В следующем примере показано, как использовать оператор -lt (меньше чем): $а=10 Последняя команда в этом примере отображает логическое значение TRUE , поскольку значение переменной $a меньше, чем $b . -le (меньше или равно) Если значение переменной в левой части оператора меньше или равно значению переменной в правой части оператора, этот оператор возвращает логическое значение TRUE , иначе возвращает False . Пример: В следующем примере показано, как использовать оператор -le (меньше или равно): $а=10 Последняя команда в этом примере отображает логическое значение TRUE , поскольку значения обеих переменных $a и $b одинаковы. Операторы сопоставления Операторы сопоставления — это те операторы, которые сравнивают строки, используя регулярные выражения или подстановочные знаки, чтобы найти совпадение. Ниже приведен список соответствующих операторов:
-подобный Оператор -like возвращает логическое значение TRUE , если строки сопоставляются с использованием подстановочных знаков. Примеры: Следующие примеры описывают использование оператора -like: Пример 1: $а=»PowerShell» Последняя команда в примере 1 возвращает значение TRUE , поскольку обе строки одинаковы. Пример 2: $а=»PowerShell» Последняя команда в этом примере возвращает значение TRUE , поскольку в переменной 9 присутствует строка « Shell ».0008 $a . -неподобие Оператор -notlike возвращает логическое значение TRUE , если строки не совпадают с использованием подстановочных знаков. Примеры: Следующие примеры описывают использование оператора -notlike: Пример 1: $а=»PowerShell» Последняя команда в приведенном выше примере возвращает значение TRUE , поскольку строки не совпадают. Пример 2: $а=»PowerShell» Последняя команда в этом примере возвращает значение False , поскольку в переменной $a присутствует строка « Shell ». -матч Оператор -match возвращает логическое значение TRUE , если строки сопоставляются с использованием подстановочных знаков. Если ввод представляет собой список, оператор -match возвращает совпадающие элементы списка. Пример: $a=»Январь», «Февраль», «Март», «Апрель» Последняя команда в этом примере возвращает строку « февраль «. — не соответствует Оператор -notmatch возвращает логическое значение True , если строки не совпадают с использованием подстановочных знаков. Примеры: Следующие примеры описывают использование оператора -notmatch: Пример 1: $а=»PowerShell» Последняя команда в этом примере возвращает значение FALSE , так как строка « ell » присутствует в строке переменной $a . Пример 2: $a=»Январь», «Февраль», «Март», «Апрель» Последняя команда в этом примере возвращает следующие строки: январь Маршировать апрель Операторы содержания Операторы включения аналогичны операторам равенства. Эти операторы всегда возвращают логическое значение True , когда значение в правой части оператора существует в наборе значений в левой части оператора, в противном случае возвращается False . Список операторов содержания:
— Содержит Этот оператор возвращает логическое значение TRUE , если значение в правой части оператора существует в наборе значений в левой части оператора. Пример: $a=»Январь», «Февраль», «Март», «Апрель» Последняя команда в этом примере возвращает True . -не содержит Этот оператор возвращает логическое значение TRUE , если значение в правой части оператора не существует в наборе значений в левой части оператора. Пример: $a=»Январь», «Февраль», «Март», «Апрель» Последняя команда в этом примере возвращает False . -в Этот оператор возвращает логическое значение TRUE , если значение в левой части оператора существует в наборе значений в правой части оператора. Пример: $b=»Март» Последняя команда в этом примере возвращает True . -не в Этот оператор возвращает логическое значение TRUE , когда значение в левой части оператора не существует в наборе значений в правой части оператора. Пример: $b=»Март» Последняя команда в этом примере возвращает False . Сменный операторОператор замены (-replace) — это оператор, который заменяет все или часть значения указанным значением с помощью регулярного выражения. Следующий оператор представляет собой синтаксис оператора -replace : <ввод> <оператор> <оригинал> , <замена> В этом синтаксисе используются два аргумента: исходный и замещающий. Пример: $a=»Операционная система Windows и Linux» Вторая команда в этом примере отображает следующий вывод: Операционная система Windows и MacOS Операторы сравнения типовОператоры сравнения типов — это те операторы, которые возвращают логическое значение TRUE , когда значение в левой части оператора указано как тип Microsoft .NET, в противном случае возвращает False . PowerShell поддерживает следующие два оператора сравнения типов:
-есть Этот оператор возвращает True , когда значение в левой части оператора указано как тип Microsoft .NET. Пример: $а=1 Вторая команда в примере отображает логическое значение True , поскольку значение переменной $a является целым числом . — не Оператор -isnot возвращает логическое значение True , если значение в левой части оператора не указано как тип Microsoft .NET. Пример: $а = «1» Вторая команда в примере отображает логическое значение 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 coming
Чтобы найти совпадение хотя бы с одним из символов, поместите их в [ ].
В приведенном выше примере соответствует символ «c». Чтобы соответствовать хотя бы одному из символов в непрерывном диапазоне [диапазон].
Здесь символы от n до r [без учета регистра] будут сравниваться со строкой, а «o» и «p» совпадают. Следовательно, вывод ИСТИНА.
10. –NotMatch
Противоречит оператору Match. Если совпадение найдено, возвращается false или наоборот.
Имя Значение
—- —– ближайшие
11. — Содержит
: Оператор содержания
Сообщает, включает ли коллекция эталонных значений точное (без учета регистра) одиночное значение. Если да, то возвращает TRUE, иначе FALSE.
Синтаксис:
<Эталонные значения> -Содержит <Тестовое значение>
Приведенный выше вывод является ЛОЖНЫМ, поскольку левая сторона содержит два значения. Но если вы сохраните их в переменной и сопоставите их, вывод будет TRUE.
Для операций с учетом регистра используйте оператор –ccontains.
12. —notContains: оператор включения (в отличие от contains)
Если тестовое значение точно совпадает с набором эталонных значений, то выводится ЛОЖЬ. В противном случае вывод TRUE.
13. -in
Аналогичен оператору Contain, только синтаксис изменен. -в оператор был введен в Powershell 3.0. Если тестовое значение соответствует эталонным значениям, возвращается значение TRUE, в противном случае — FALSE.
Синтаксис:
В приведенном выше примере «Shell» не совсем соответствует Powershell.
14. –notin: не в операторе (в отличие от оператора -in)
Если проверочное значение точно соответствует эталонным значениям, возвращается ЛОЖЬ, в противном случае – ИСТИНА.
15. – Заменить: Изменяет указанное значение
Синтаксис:
<Строка> -replace <Старое значение>,<Новое значение>
Чтобы заменить значение в переменной
Примечание: Есть два совпадающих значения «есть», поэтому он заменил два значения.
16. Другие аналогичные операторы
Существуют и другие аналогичные операторы, упомянутые ниже.
а. Побитовые операторы
-bAnd | Побитовое И |
-бор | Побитовое ИЛИ (включительно) |
-bXor | Побитовое ИЛИ (исключающее) |
-bНе | Побитовое НЕ |
-шл | Сдвиг влево |
-шр | Сдвиг вправо |
2.