2016-09-16 63 views
0

以下代碼適用於v4,但不適用於v3。Collection.Where()方法的PowerShell問題

$Running,$Stopped = (Get-Service).Where({$_.Status -eq 'Running'},'Split') 

我怎樣才能把它改寫得到它在V3運行,並給予同樣的結果?

+0

'$ SRV = GET-服務|組狀態-AsHashTable -AsString'可能會關閉,並且* some * use-cases甚至更好。 – wOxxOm

回答

3

我會分裂表達(所有版本):

$Running = Get-Service | ? {$_.Status -eq 'Running'} 
$Stopped = Get-Service | ? {$_.Status -ne 'Running'} 

或者,正如@wOxxOm指出,在V3:

$Running = Get-Service | ? Status -eq 'Running' 
$Stopped = Get-Service | ? Status -ne 'Running' 
+1

在PS3'哪裏可以直接比較:'Get-Service | ?狀態-eq'正在運行' – wOxxOm