Grep:查找所有没有该模式的电子邮件

Grep:查找所有没有该模式的电子邮件

我有一个包含一堆文件的目录,每个文件包含数百万封电子邮件。

我需要获取所有不符合此模式的电子邮件

 [email protected]

x 和 y 是字母。

我现在有了这个,但它与正确的电子邮件不匹配

grep -P -r -x (?![a-z]*\.[a-z]*@enron)

答案1

回答

grep -Evr "[a-z]+\.[a-z]+@enron"

解释

-E- 使用扩展正则表达式。 (允许使用某些字符而不转义它们)

-v- 反转火柴。 (所有与模式不匹配的内容都会显示出来)

-r- 递归搜索文件。

[a-z]+\.[a-z]+@enron- 你的正则表达式只是用+而不是*,因为我预计每个部分中必须有一些字母。

相关内容