2016-01-05 66 views
0

如何簡化以下腳本?簡化Where-Object以過濾多個相同的對象

Get-ADComputer -Filter * -properties * | Where-Object { 
    $_.OperatingSystem -like "*2003*" -and 
    $_.OperatingSystem -like "*2008*" -and 
    $_.OperatingSystem -like "*2012*" 
} | sort name | ft name, description, OperatingSystem 

我一直在尋找這一塊,並希望得到一些幫助。我知道我可以通過使用"*20*"來簡化,我會得到我的結果,但我想知道如何使用多個標準(即XP,Windows 10等)。

+2

也許是一個狡辯,但你有什麼是永遠不會返回任何東西,只要這些條件是與而不是或。 – mjolinor

+0

實際上如何使用tat -Filter thingie作爲開始? –

回答

3

你可以使用-match駕駛員提供一個正則表達式模式

...|?{$_.operatingsystem -match "2008|2012|XP" } 

要知道,?Where-Object的別名。有關更多這些信息,請參閱Get-Alias的輸出。

+0

謝謝。這是一種享受。我還在學習。 – Gaetan

+1

我正在尋求確認。完成 – Gaetan