gpt4 book ai didi

powershell - 如何使用 Where-Object/Wildcards 匹配多个字符串?

转载 作者:行者123 更新时间:2023-12-05 08:46:13 33 4
gpt4 key购买 nike

我被要求使用 Get-Command 提取命令,其中动词是 getsetconvertTo 之一 并且名词以 CXV 中的任何一个开头。

这是我目前所拥有的:

Get-Command | ?{$_ -like "set[-][CXV]*"} #Prints all commands that start with Set

我正在努力搜索 setgetConvertTo 的多个动词。我尝试了几种不同的方法,但都无济于事。

最佳答案

你的开始是正确的,但是,-like 允许你只匹配通配符模式,而 -match 允许你匹配正则表达式模式,你的正则表达式只需要一点点调整:

Get-Command | ?{$_ -match "((^set)|(^get)|(^convertto))-[CXV]+"}

这可以进一步缩短为:

Get-Command | ?{$_ -match "((^[sg]et)|(^convertto))-[CXV]+"}

如果你想要命令的排序输出:

Get-Command | ?{$_ -match "((^[sg]et)|(^convertto))-[CXV]+"} | Sort

引用:About Comparison Operators

关于powershell - 如何使用 Where-Object/Wildcards 匹配多个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70132364/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com