Powershell 在服务名称包含破折号的位置使用Get服务

Powershell 在服务名称包含破折号的位置使用Get服务,powershell,service,sas,Powershell,Service,Sas,我想使用PS脚本启动和停止特定服务。当我使用以下命令时: Get-Service "SAS [SASConfig-Lev1] SASMeta - Metadata Server" | Where {$_.status –eq 'Stopped'} | Start-Service 我得到一个错误: Get-Service : The specified wildcard character pattern is not valid: SAS [SASConfig-Lev1] SASMeta -

我想使用PS脚本启动和停止特定服务。当我使用以下命令时:

Get-Service "SAS [SASConfig-Lev1] SASMeta - Metadata Server" | Where {$_.status –eq 'Stopped'} | Start-Service
我得到一个错误:

Get-Service : The specified wildcard character pattern is not valid: SAS [SASConfig-Lev1] SASMeta - Metadata Server

At line:1 char:1

+ Get-Service "SAS [SASConfig-Lev1] SASMeta - Metadata Server" | Where  ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Get-Service], WildcardPatternException
    + FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.GetServiceCommand
问题不在Where子句中,因为如果我删除它,我会得到相同的错误

Get-Service "SAS [SASConfig-Lev1] SASMeta - Metadata Server" | Start-Service
我试过这个

Get-Service 'SAS [SASConfig-Lev1] SASMeta - Metadata Server' | Start-Service
还有这个

Get-Service "SAS [SASConfig`-Lev1] SASMeta - Metadata Server" | Start-Service
但是得到同样的错误

Get-Service "SAS [SASConfig-Lev1] SASMeta - Metadata Server" | Start-Service

关于如何在服务名称中包含破折号以及如何让
获取服务
无误运行,您有什么建议吗?

您需要进行一些转义,以便将方括号放入服务名称值中。开口括号前的两个主要墓碑(```)不是错误。转义将说服解析为而不是将第一个参数视为包含通配符

Get-Service "SAS ``[SASConfig-Lev1] SASMeta - Metadata Server"
来自我的powershell控制台的示例:

> Get-Service "SAS ``[BIserver-Lev1] Web Infrastructure Platform Data Server" | Format-List


Name                : SAS [BIserver-Lev1] Web Infrastructure Platform Data Server
DisplayName         : SAS [BIserver-Lev1] Web Infrastructure Platform Data Server
Status              : Running
DependentServices   : {}
ServicesDependedOn  : {RPCSS}
CanPauseAndContinue : True
CanShutdown         : True
CanStop             : True
ServiceType         : Win32OwnProcess


我猜当解析命令行时,
`
会被缩减为
`
,并且
`
会在Get Services解释中用括号转义,谢谢你,Richard。这是我现在工作的大多数项目。这非常有帮助,因为当我想按特定顺序启动和停止这些服务时,这将节省我很多时间。