recuperando el nombre de host de la dirección de correo electrónico

recuperando el nombre de host de la dirección de correo electrónico

Estoy intentando revisar correos electrónicos individuales y recuperar el nombre del host. Cada correo electrónico tiene una sección Para: con una dirección de correo electrónico " [email protected]". Estoy intentando recuperar sólo " aol.com"

P.ej:

To: [email protected] (abc123)

To: [email protected],hk (Jim)

To: [email protected]\ (Jim)

Rendimiento esperado:

aol.com

yahoo.com,hk

yahoo.com\

Respuesta1

Intentar:

sed 's/.*@\(.*\) .*/\1/g' input

O:

awk -F '[@ ]' '{print $3}' input

Este guarda un espacio final:

grep -Eo '@.* ' input

Respuesta2

Yo usaría las expresiones regulares compatibles con Perl de GNU grep:

grep -oP '(?<=@)\S+'

Respuesta3

Puedes mantenerlo simple y usar cortar:

cut -d'@' -f2

Por ejemplo, si tuviera estos correos electrónicos en un archivo grande llamado emails.txt:

grep 'To:' emails.txt | cut -d'@' -f2

información relacionada