如何使用PowerShell中的Get-Content和Select-String输出与'this_string'不匹配的行?

时间:2011-11-21 16:20:54

标签: powershell grep

我发现了一篇关于想要在PowerShell中使用grep的用户的帖子。例如,

PS> Get-Content file_to_grep | Select-String "the_thing_to_grep_for"

如何输出非this_string

的行

3 个答案:

答案 0 :(得分:52)

Select-String具有NotMatch参数。

get-content file_to_grep | select-string -notmatch "the_thing_to_grep_for"

答案 1 :(得分:14)

get-content file_to_grep | select-string "^(?!the_thing_to_grep_for$)"

将返回与the_thing_to_grep_for不同的行。

get-content file_to_grep | select-string "^(?!.*the_thing_to_grep_for)"

将返回包含 the_thing_to_grep_for的行。

答案 2 :(得分:4)

gc  file_to_grep | ? {!$_.Contains("the_thing_to_grep_for")}

这是区分大小写的比较。