Parfois les lignes de commandes sont sur 2 lignes au lieu d’une : Fésé gaffe !
Pour ce faire nous allons utiliser le programme Grep de recherche de chaînes de caractères. Voici la commande :
grep -Eio ‘([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})’ mon_fichier.txt
Vous pouvez mettre le résultat dans un fichier text.txt comme ceci :
grep -Eio ‘([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})’ mon_fichier.txt > text.txt
Le fichier dont je voulais extraire les mails provenait du logiciel évolution. Dans ce fichier , beaucoup d’adresses étaient pour moi sans intérêts et une seule ligne se répétait constament : » Email :exemple@truc.fr » et c’est celle-ci qui m’intéressait. les autres je ne les voulais pas. J’ai donc préalablement utilisé la encore Grep pour retenir cette ligne uniquement :
grep ‘^Email:’ mon_fichier.txt > mon_fichier_de_sortie.txt
le caractère ^ indique « commence par » . Ainsi la commande se traduit par : Trouve toutes les lignes qui commencent par » Email: » et inscrit le résultat dans mon_fichier_de_sortie.txt. Ensuite j’ai utilisé les commandes précédentes pour avoir un fichier sous la forme : ( une ligne = un mail )
blabla@gg.fr
toto@tutu.fr
Comptez le nombre de mails que vous avez extrait. Ici nous allons utiliser le programe « wc » word count:
wc -l mon_fichier.txt
Pour s’assurer qu’il n’y ait pas de doublons on va trier les adresses de notre fichier par ordre alphabétique avec « sort » et « uniq »:
sort mon_fichier.txt | uniq > mon_fichier_de_sortie.txt
Vous pourrez facilement importer votre fichier dans une base de donnée Mysql par exemple ! Plutôt bien non ? Ensuite si vous souhaitez envoyer beaucoup de mails d’un coup, optez pour un service en ligne comme Emailsolar.

