如何删除电子邮件中包含三个以上点的行?

时间:2019-01-21 18:23:37

标签: linux

我们如何删除电子邮件地址中超过三个点的行? 我们如何使用sed命令来做到这一点?

例如:

fgtc21_pk@yahoo.com
bhchemitex@chemitex.com
hjcindysun48@hotmail.com
hhconsult_sa.jan.2020@yahoo.com
s.ing.song.lan.g.ju.n.55.l@gmail.com
VB.t.o.t.all.y.f.it.s.19.99@gmail.com
a.lice.i.n.wonde.r.lnd.2.1.f@gmail.com

我希望从文件中删除以下带有多个点(3个或更多点)的行。

s.ing.song.lan.g.ju.n.55.l@gmail.com
VB.t.o.t.all.y.f.it.s.19.99@gmail.com
a.lice.i.n.wonde.r.lnd.2.1.f@gmail.com

1 个答案:

答案 0 :(得分:0)

sed '/^\(.*\..*\)\{3,\}@/d'

从行的开头匹配零个或多个任何字符,然后是一个点,然后零个或多个任何字符,匹配3次或更多次,然后匹配一个@符号。删除匹配的行。