- Windows PowerShell -Contains
- PowerShell の -Contains 条件演算子のトピック
- 例1a.PowerShell -Match
- 例 1b: PowerShell の -Contains は非常に厳しい
- 例 3: PowerShell -Contains Spreadsheet
- Guy Recommends: ネットワーク パフォーマンス モニター (無料トライアル)
- 演算子について
- PowerShellの演算子の種類の一覧です
- PowerShellの-Contains条件演算子の概要
- See more Windows PowerShell flow control examples
Windows PowerShell -Contains
フィルタリングやデータの検索に関しては -Match, -Like および -Contains と選択肢が豊富ですが、その中でも最も重要なのは「条件付きで選択される」ということでしょう。
-Contains(含む)は、正確な値を求めるのに最適な演算子です。 コマンドで True か False のどちらかを返したい場合は、-Contains から始め、結果のリストが必要な場合は、-Match か -Like を試します。
PowerShell の -Contains 条件演算子のトピック
- 例 1: PowerShell -Contains(基本)
- 例 2: コレクションで値を求める
- Example 3: PowerShell の条件演算子 -Contains 条件演算子のトピック
例1a.PowerShell -Match
PowerShell は単数形の名詞を使用します。したがって、「contains」は動詞であり、複数形の名詞ではありません。 Containsの特徴は、通常「True」または「False」を返すことです。 値のリストを返すコマンドを探している場合は、-Match または -Like を使用してください。
# PowerShell -Contains OperatorClear-Host$ArraySimple =@("House","Flat","Bungalow")$ArraySimple -Contains "Flat"# Result PS> True
例 1b: PowerShell の -Contains は非常に厳しい
Containsは非常にうるさいので、いらいらさせられるかもしれません。 しばらくすると、これは単なる設計上の機能であり、気に入らない場合は -Match を試してみてください。
# PowerShell -Contains OperatorClear-Host$ArraySimple =@("House","Flats","Bungalow")$ArraySimple -Contains "Flat"# Result PS> False
注意 1: -Contains は “Flats” と “Flat” を異なるものとして解釈し、したがって False を返す; Flat が Flats のサブセットでも問題ない。
挑戦 : -Contains に代えて、-Match を使用してください。 PowerShell 用の無料の WMI モニター (無料ツール)
Windows Management Instrumentation (WMI) は、Microsoft のオペレーティング システムの隠れた宝物の 1 つです。
オペレーティング システム、Active Directory、または Exchange Server をスクリプト化する際に、どの WMI カウンターを使用するか推測する手間を省くことができます。
SolarWinds WMI Monitor Download 100% Free Tool
例 2: コレクション内の値を求める
コレクション、配列またはハッシュテーブル内の特定のアイテムをテストしたい場合、条件演算子として Contains は私の選択肢となります。
# PowerShell -Contains$Collection = "Peter Smith", "Paula Harris", "Joan Evans"$Collection -Contains "Paula"# Result PS> False
注意 2: コード化すると、$Collection -Contains “Paula Harris”
結果は次のようになります。 True となります。
例 3: PowerShell -Contains Spreadsheet
リンクス.csv というファイル内で検索したいと仮定してみましょう。 さらに、Import-Csv を使用してデータを読み取り、-Contains で値をテストできるようにします。
準備
私のスプレッドシートの名前は links.csv
D:\PowerShell にファイルを格納しました
列名は “Custom channel”
右のスクリーンショットを参照してください
Guy Recommends: ネットワーク パフォーマンス モニター (無料トライアル)
SolarWinds ネットワーク パフォーマンス モニター (NPM) は、ネットワークで何が起こっているかを発見するのに役立ちます。 ダッシュボードでは、根本的な原因がリンク切れなのか、機器の欠陥なのか、それともリソースの過負荷なのかを示します。 また、個々の VMware 仮想マシンの健全性を監視する機能も備えています。
SolarWinds Network Performance Monitor Download 30-day FREE Trial
例 4: PowerShell -CContains
PowerShellの他の条件演算子と同様、コマンドを「C」で先行させることにより、強制的に大文字小文字を区別するようにすることが可能です。
注意 4: ポイントは、スプレッドシートでは値は明らかに ‘LinkTop’ であり、CContains で大文字と小文字を区別させると、これは ‘linktop’ と同じではないので、結果は False となります。
例 5: PowerShell -NotContains
負の値 -NotContains は -NotMatch ほど便利ではありません。
注意 5: -Contains と、その延長線上の -NotContains では、一致は正確でなければならないことに注意してください。 正確に ‘link’ という名前の ‘Custom channel’ は存在しません。
PowerShell の -Like 比較についてもっと見る “
Guy Recommends: SolarWinds Engineer’s Toolset (無料トライアル)
この Engineer’s Toolset は、コンピューターの問題をトラブルシューティングするための 50 のユーティリティの包括的なコンソールを提供します。 Guy は、ネットワーク上で何が起こっているかを監視するのに役立ち、各ツールが基本的なシステムの動作方法についてより多くを教えてくれると述べています。 ありがたいことに、ユーティリティは、監視、ネットワーク検出、診断、および Cisco ツールというように、論理的に表示されます。 SolarWinds Engineer’s Toolsetを今すぐ14日間の無料トライアルでお試しください。
SolarWinds Engineer’s Toolset Download 14-day FREE Trial
演算子について
# For even more information about PowerShell Operators try:Get-Help about_Operators
PowerShellの演算子の種類の一覧です
PowerShellの~も参照してみてください。Match “
“
PowerShellの-Contains条件演算子の概要
正確な値を求める場合、この演算子を使用することができます。 であれば、-Containsは条件演算子の最初の選択肢になると思います。 -Match や -Like は、部分的にしかマッチしない場合や、アイテムのリストが必要な場合に適している。
See more Windows PowerShell flow control examples
– PowerShell Home – PowerShell If Statement – PowerShell ElseIf – Free Permissions Analyzer
– Conditional Operators – PowerShell -Match -Like – PowerShell -Contains
– PowerShell Comparison Operators – PowerShell Syntax – Where Filter – PowerShell Else
– より良いサンプル スクリプトを持っていれば私に電子メールを送信してください。 また、事実誤認、文法的誤り、リンク切れなどがありましたらご報告ください、喜んで修正いたします。