Tutoriales

Cómo extraer correos electrónicos de archivos usando Grep en Linux

Si alguna vez ha estado involucrado en tareas de entrada y extracción de datos como asistente virtual autónomo o proyecto personal/laboral, entonces sabe la importancia de la organización y gestión de datos. El sistema operativo Linux siempre ha transformado a sus usuarios en expertos en datos.

Un dato importante e insustituible en proyectos personales y laborales son las direcciones de correo electrónico. Identifica y vincula de manera única la información específica del usuario en el sistema de gestión de datos.

El uso de direcciones de correo electrónico como puntos de referencia de datos primarios satisface los siguientes objetivos.

  • Los usuarios que trabajan en proyectos comerciales como el comercio electrónico pueden comunicar y procesar fácilmente información relacionada con sus clientes y empleados sin violar ningún protocolo de seguridad.
  • El correo electrónico es más rápido y, por lo tanto, más fácil de transferir. Además, los mensajes de correo electrónico duplicados siempre se guardan en la máquina del destinatario para referencia futura.
  • Las direcciones de correo electrónico tienen alcance global, lo que significa que puede hacer crecer su proyecto a nivel mundial.
  • El correo electrónico es sin papel. No tiene que preocuparse por ningún papeleo ambiguo asociado con él.
  • Los mensajes de correo electrónico pueden enviar o responder automáticamente a los mensajes entrantes para diferentes fechas del calendario.

Esta guía de artículos describirá las posibles formas de extraer direcciones de correo electrónico de un archivo usando el comando grep en Linux.

Extraer correos electrónicos de archivos en Linux

Todas las direcciones de correo electrónico siguen una sintaxis/formato similar a la siguiente:

@.

la expresión anterior Dirección de correo electrónico El formato como expresión regular es el siguiente:

[a-zA-Z0-9._]\[email protected][a-zA-Z]\+.[a-zA-Z]\+ 

Sección de expresiones regulares Admite letras minúsculas, letras mayúsculas, todos los números, puntos y guiones bajos.Este y Las secciones admiten letras mayúsculas y minúsculas.esta parte \+ Acomodar la repetición de números y letras.

Vamos a crear un archivo de texto de muestra con información sobre algunas direcciones de correo electrónico y obtener una vista previa con el comando cat.

 
$ nano i_have_emails.txt
Crear archivo con correo electrónico

Ahora que nuestro archivo de texto de muestra se ha rellenado con algunos datos de direcciones de correo electrónico, es hora de mostrar grep La sintaxis del comando solo es responsable de extraer los detalles de la dirección de correo electrónico de este archivo.

$ grep -e -o <"pattern"> 

Este Parte de esta sintaxis es equivalente a una expresión regular [a-zA-Z0-9._]\[email protected][a-zA-Z]\+.[a-zA-Z]\+. Este Las secciones son equivalentes al archivo de texto de ejemplo que acabamos de crear y completar.

Este grep página del comando man ($ man grep) Descríbalo como un comando útil para imprimir líneas que coincidan al 100% con un patrón en particular.

opciones de comando -e Decir grep Utilice el patrón proporcionado o la expresión regular cuando consulte el contenido del archivo de texto actual.opciones de comando -o Dígale a grep que genere solo patrones coincidentes en los resultados de la consulta.

Podemos lograr lo anterior grep La sintaxis se ajusta a nuestro escenario de la siguiente manera.

$ grep -oe "[a-zA-Z0-9._]\[email protected][a-zA-Z]\+.[a-zA-Z]\+" i_have_emails.txt 
Extraer correos electrónicos de archivos de texto
Extraer correos electrónicos de archivos de texto

Como puede ver, los cinco correos electrónicos presentes en el archivo de texto se han impreso en la terminal de Linux.Para guardar la salida anterior en un nuevo archivo, modificaremos nuestro grep comando de la siguiente manera.

$ grep -oe "[a-zA-Z0-9._]\[email protected][a-zA-Z]\+.[a-zA-Z]\+" i_have_emails.txt > received_emails.txt
$ cat received_emails.txt
Extraiga la salida del correo electrónico a un archivo de texto
Extraiga la salida del correo electrónico a un archivo de texto

implementar grep comando sin opción de comando -o Solo se resaltará la parte del archivo de texto con la información de la dirección de correo electrónico.

$ grep -e "[a-zA-Z0-9._]\[email protected][a-zA-Z]\+.[a-zA-Z]\+" i_have_emails.txt 
Buscar correos electrónicos de archivos de texto
Buscar correos electrónicos de archivos de texto

ahora podemos usar grapa Ordenar.

LEER  Buscar y extraer archivos blob

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba