我需要在包含 pattern1 但没有 pattern2 的文件目录中搜索。
问问题
1842 次
3 回答
2
查看 grep 的 -v 标志。您可以将多个调用一起传递给 grep,这可能是这里最简单的方法。一个查找 pattern1,另一个查找 grep -v pattern2。
于 2013-04-06T04:43:04.317 回答
1
grep pattern1 $(grep -L pattern2 *)
如果我正确理解你想要什么,这可能是最简单的方法。 -L
表示“只打印不包含此模式的所有文件的名称”;它是 的倒数-l
。如果您的文件名称中包含空格或其他一些 shell 元字符,这将无法正常工作。
于 2013-04-06T04:45:08.793 回答
1
您可以将 grep 添加到第一个 grep:
grep -r "this pattern" /path | grep -v "not this patten"
高温高压
弗朗西斯科
于 2013-04-06T04:47:41.513 回答