目錄

PowerShell - 使用 Where-Object 過慮輸出內容

說明

PowerShell 是近期想多熟悉的語言,最近剛好有機會來練習了 Where-Object 的使用。

在條件比對中 Where-Object 支援多個 operaters,以下列出幾個較常使用的 operaters。

Containment Operators

  • -contains:包含特定值
  • -notcontains:不包含特定值

Matching Operators

  • -like:字串符合萬用字元特徵
  • -notlike:字串不符合萬用字元特徵

Equality Operators

  • -eq:完全符合值
  • -ne:不符合值

範例

下面指令可以將想要的 hotfix 輸出出來。

Get-Hotfix | Where-Object {$_.HotFixID -eq "KB2999226"} 

當然,Where-Object 也可以使用多條件來查詢。利用-and-or兩個參數來達到

Get-Hotfix | Where-Object {$_.HotFixID -eq "KB2999226" -or $_.HotFixID -eq "KB3080149"} 

利用大於等於條件 -ge ,找大於等於特定日期後安裝的 hotfix

Get-Hotfix | Where-Object {$_.InstalledOn -ge "2022/05/01"} 

取得 Status 是 Running 的服務。

Get-Service | Where-Object {$_.Status -eq "Running"} 

結論

在使用 PowerShell 取得一些資訊時,善用 Where-Object 可以相當快速的取得相要的內容,是個需要好好熟悉的指令。

延伸閱讀

參考資料