如何为“grep”linux 程序正确构建正则表达式,以查找/etc 目录中的所有电子邮件? 目前,我的脚本如下:
grep -srhw "[[:alnum:]]*@[[:alnum:]]*" /etc
它工作正常 - 看到了一些电子邮件,但是当我修改它时,为了捕捉“@”符号前后的一个或多个字符......
grep -srhw "[[:alnum:]]+@[[:alnum:]]+" /etc
..它完全停止工作了
此外,它不会捕获格式为“Name.LastName@site.com”的电子邮件
帮助!
最佳答案
还有一个例子
grep -Eiorh '([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})' "$@" * | sort | uniq > emails.txt
此变体适用于 3 级域。
关于linux - 使用 grep 查找所有电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2898463/