Powershell - Select-string中的OR运算符

时间:2016-05-18 10:34:50

标签: powershell

在powershell中是一种放置多种搜索模式的方法吗?下面的命令示例,我想搜索那些具有ASA或TMP的字符串。但它不起作用。搜索应匹配为单个单词示例:ASA为true但TIASAP为false

Get-ChildItem E:\Test\Workflow -Exclude *.bak -Recurse | Select-String -pattern "ASA" -or "TMP" -SimpleMatch | Where-Object LineNumber -le 50 | group path | select name 

2 个答案:

答案 0 :(得分:2)

如果省略-SimpleMatch转换,则Select-String cmdlet会使用regex,因此您只需搜索ASA|TMP

Get-ChildItem E:\Test\Workflow -Exclude *.bak -Recurse | Select-String -pattern "ASA|TMP" | Where-Object LineNumber -le 50 | group path | select name 

答案 1 :(得分:1)

只需将要匹配的字符串列表传递给-Pattern参数即可。

例如,要搜索所有function个文件中的单词checkGet-ChildItem *.ps1 | Select-String -Pattern function,check ,请执行以下操作:

Get-ChildItem E:\Test\Workflow -Exclude *.bak -Recurse | Select-String -pattern ASA,TMP -SimpleMatch

这会使你的榜样成为:

ng-switch