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 

尝试使用{}而不是括号括住你的论点。

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

注意语法。 首先,where子句用大括号括起来; 另外,$ _表示法用于表示默认对象(也就是通过pipe道传输的对象)。

你需要使用{而不是(

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