除了脚本中已有的文字外,如何grep其他文字

时间:2019-03-15 11:35:14

标签: bash grep

我正在bash上创建过滤器电子邮件脚本,我唯一的问题是我想grep -cHotmail, Outlook, Gmail, Etc以外的文本并将其设置为Other,示例脚本是

echo "Hotmail : `grep -c "@hotmail" $inputFile`"
echo "Outlook : `grep -c "@outlook" $inputFile`"
echo "Yahoo : `grep -c "@yahoo" $inputFile`"
echo "Gmail : `grep -c "@gmail $inputFile`"

我希望所有其他电子邮件,例如@sbc,@ mail.ru或上面未列出的任何电子邮件都算作“其他”,谢谢

1 个答案:

答案 0 :(得分:1)

echo "Other : `egrep -vc '@(hotmail|outlook|yahoo|gmail)' $inputFile`"

-v标志使grep仅对那些不显示模式的行进行grep。
egrep启用(... | ... | ...)替代项。