この記事は以前 http://blog.hiros-dot.net/ に書いたものです。
PowerShellにおける比較演算子には下記のものがあります。
| 演算子 |
説明 |
| -eq, -ceq, --ieq |
等しい |
| -ne, -cne, -ine |
等しくない |
| -gt, -cgt, -igt |
より大きい |
| -ge, -cge, -ige |
以上 |
| -lt, -clt, -ilt |
より小さい |
| -le, -cle, -ile |
以下 |
| -like, -clike, -ilike |
ワイルドカードによる比較
一致したときにTrueを返す |
| -notlike, -cnotlike, -inotlike |
ワイルドカードによる比較
一致しなかったときにTrueを返す |
| -match, -cmatch, -imatch |
正規表現による比較
一致したときにTrueを返す |
| -notmatch, -cnotmatch, -inotmatch |
正規表現による比較
一致しなかったときにTrueを返す |
比較演算子は与えられた引数を評価し、1つの出力(TrueまたはFalse)を返します。
各演算子の先頭が「-c」の場合は大文字と小文字の区別をします。また「-i」の場合は大文字と小文字の区別を行いません。これは先頭に「-c」や「-i」がつかないものと同一です。
いかにいくつか例を示します。
-eq演算子
この演算子は"等しい"(equal)を意味します。
この演算子の左側の値と右側の値が等しいかを比較します。
PS > 5 -eq 5
True
PS > 5 -eq 3
False
-ne演算子
この演算子は"等しくない"(not equal)を意味します。
この演算子の左側の値と右側の値が等しくないことを比較します。
等しくない場合にはTrueを返します。
PS > 5 -ne 3
True
PS > 3 -ne 3
False
-gt演算子
この演算子は"等しくない"(greater than)を意味します。
この演算子の左側の値が右側の値より大きいかを比較します。
右側の値より大きい場合にはTrueを返します。
PS > 5 -gt 3
True
PS > 3 -gt 5
False
-lt演算子
この演算子は"より小さい"(less than)を意味します。
この演算子の左側の値が右側の値より小さいかを比較します。
右側の値より小さい場合にはTrueを返します。
PS > 3 -lt 4
True
PS > 4 -lt 3
False
-like演算子
この演算子はワイルドカードによる曖昧検索を行います。
曖昧検索にヒットした場合はTrueを返します。
sample7の1つ目は"HIRO's.NET"の先頭が"HIRO"で始まっているかを検索します。
2つ目は"hi"で始まっているかを検索します。
3つめは演算子名の先頭に"c"を付加して、大文字と小文
別して検索を行うためFalseが返されています。
PS > "HIRO's,NET" -like "HIRO*"
True
PS > "HIRO's,NET" -like "hi*"
True
PS > "HIRO's,NET" -clike "hi*"
False
-match演算子
この演算子は正規表現による検索を行います。
マッチした場合はTrueを返します。
PS > "HIRO's.NET" -match "[a-z]IRO's.NET"
True