Article mise à jour le

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.

A propos de l'auteur

Articles similaires

Poster un Commentaire

avatar

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

  S’abonner  
Notifier de