Power Shell 不喜歡命令

Power Shell 不喜歡命令

有什麼想法我在這裡做錯了嗎?我從教程中複製了這個腳本並收到此錯誤...

PS C:\Windows\system32> Get-Service | Where-Object ($_.status -eq "running")

Where-Object : Cannot bind parameter 'FilterScript'. Cannot convert value "False" to type "System.Management.Automation
.ScriptBlock". Error: "Invalid cast from 'System.Boolean' to 'System.Management.Automation.ScriptBlock'."
At line:1 char:27
+ Get-Service | Where-Object <<<<  ($_.status -eq "running")
    + CategoryInfo          : InvalidArgument: (:) [Where-Object], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.WhereObjectCommand

答案1

嘗試使用 {} 而不是參數周圍的括號。

http://technet.microsoft.com/en-us/library/ee177028.aspx

仔細記下文法。首先,where 子句括在大括號內;另外,$_符號用於表示預設物件(即透過管道傳輸的物件)。

答案2

您需要使用 { 而不是 (

Get-Service | Where-Object {$_.status -eq "running"}

相關內容