1 votos

Extraer direcciones de correo electrónico de archivos de texto de gran tamaño

¿Hay alguna forma de buscar en un montón de documentos de texto y extraer las direcciones de correo electrónico en un documento nuevo?

Hasta ahora tengo esto en Automator:

#!/bin/bash

Report=/Users/me/Desktop/mail/cur.txt

for f in /Users/me/Desktop/mail/test/*
do
    if [ -f "$f" ] ; then
        EMAIL=$(/usr/bin/grep -E -o '^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$' "$f" )
        if [ "$EMAIL" != "" ] ; then
            echo "$EMAIL" >> "$Report"
        fi
    fi
done

Pero estoy recibiendo un montón de líneas vacías impresas en la salida.

2 votos

Hay varias maneras, pero hay que ser un poco más específico sobre los formatos, etc. Por favor, muestra también lo que has intentado hasta ahora para resolver el problema.

0 votos

Bueno esta es la parte que no puedo hacer, no se como sacar cada e-mail de una línea.

1 votos

1voto

thepurkayasta Puntos 1
#!/bin/bash

Report=/Users/me/Desktop/mail/cur.txt

for f in /Users/me/Desktop/mail/test/*; do
  if [ -f "$f" ] ; then
    EMAIL=$(/usr/bin/grep -E -o '([a-zA-Z0-9_\.-]+)@([a-zA-Z0-9_\.-]+)\.([a-zA-Z]{2,5})' "$f" )

    if [ "$EMAIL" != "" ] ; then
      echo "$EMAIL" >> "$Report"
    fi
  fi
done

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X