Powershell where子句过滤
Posted
技术标签:
【中文标题】Powershell where子句过滤【英文标题】:Powershell where clause filtering 【发布时间】:2014-03-04 04:44:19 【问题描述】:我正在尝试使用 powershell 脚本过滤在服务器中运行的服务。但是语法似乎不正确
脚本
Get-Service -ComputerName $ServerName |Where-Object $_.Name -like "DEX*" -or $_.Name -like "WORLD*" -or $_.Name -like "Entr *"
突出显示的部分有问题。非常感谢任何帮助..
【问题讨论】:
我看到的第一件事是您的示例缺少结束
。运行此行时,您看到了哪些错误和/或意外行为?
添加了大括号。添加时错过了。
它只是获取名称为“DEX*”的服务,其他部分被忽略
【参考方案1】:
在Get-Service
Name
属性中匹配服务的短名称。你不需要DisplayName
吗?
Get-Service -ComputerName $ServerName |Where-Object $_.DisplayName -like "DEX*" -or $_.DisplayName -like "WORLD*" -or $_.DisplayName -like "Entr*"
另外,您的服务简称或显示名称真的以 WORLD 或 Entr 开头?
【讨论】:
是的 JPBLanc 显示名称以 World 和 Entr.. 开头。谢谢【参考方案2】:一旦您知道您正在寻找显示名称,这是一种最短的方法:
get-service -displayname DEX*,WORLD*,Entr*
【讨论】:
以上是关于Powershell where子句过滤的主要内容,如果未能解决你的问题,请参考以下文章
Powershell 使用 WHERE 子句插入 MS Access
如何将 WHERE 子句添加到 Power BI 中的 SQL 或 Access 数据源?