You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Where-Object/通配符匹配多个PowerShell命令字符串?

实现方案

有两种常用的实现方式,其中第一种直接调用Get-Command内置参数,执行效率更高,写法也更简洁:

方法1:使用内置参数过滤(推荐)

Get-Command原生支持-Verb和-Noun参数直接匹配规则,无需额外遍历过滤:

Get-Command -Verb Get,Set,ConvertTo -Noun C*,X*,V*

-Verb参数直接传入你需要匹配的三个动词列表,-Noun参数匹配C/X/V开头的名词即可。

方法2:沿用你当前的管道过滤写法

如果你要保留现在的管道过滤逻辑,把匹配运算符换成支持多规则的正则匹配-match即可:

# 和你原来的?别名写法兼容
Get-Command | ?{$_ -match '^(Get|Set|ConvertTo)-[CXV].*'}

如果不想用正则,也可以用通配符多条件拼接:

Get-Command | ?{$_ -like "Get-[CXV]*" -or $_ -like "Set-[CXV]*" -or $_ -like "ConvertTo-[CXV]*"}

提示:PowerShell的匹配默认不区分大小写,不需要额外处理动词大小写适配的问题。

内容的提问来源于stack exchange,提问作者EV20

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 17:54:04