Для Centos 7 вы можете сделать это:
rpm -i http://mirror.pnl.gov/epel/7/x86_64/i/iftop-1.0-0.7.pre4.el7.x86_64.rpm
Aquí hay una solución usando grep:
grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" /path/to/file/of/emails/and/such.txt
Esto obtendrá todas las direcciones de correo electrónico en el archivo. Es posible que desee adaptar la expresión regular para que coincida solo con un dominio específico.
-E, --extended-regexp Interpret PATTERN as an extended regular expression
-o, --only-matching Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line.
-o
imprime solo la parte que coincide con el patrón, por lo que deberá extender el patrón para incluir la parte anterior a @
. Con las direcciones en su muestra, capturar cualquier espacio en blanco que no sea -debería hacer:
$ grep -oniTE '[^[:blank:]]+@outlook.com' foo
1: buffalos@outlook.com
2: target@outlook.com
3: helpme@outlook.com
Sin embargo, en general, las direcciones de correo electrónico sondifícilesde analizar (, pueden contener espacios en blanco entrecomillados ), y lo anterior perderá algunas direcciones de correo electrónico válidas (e incluirá algunas no válidas unos ). Véase, por ejemplo. Wikipedia y los estándares relevantes para los detalles sangrientos.