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.
Total 5,904 , Aujourd’hui 1