Script MS-DOS
adrenaline28
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je ne connais pas grand chose en MS-DOS et je cherche à faire un script qui permet de récupérer dans X fichier différent contenu dans un dossier, une partie txt de chaque fichier.
J'aimerais en faite récupérer l'adresse mail de chaque mail que je reçois et la stocker dans un txt.
J'ai déjà quelques pistes
find "AuthorEmail dt" mail.msg > step1.txt
Cette commande me permet de récupérer cette ligne
---------- MAIL.MSG
<o:_AuthorEmail dt:dt=3D"string">***@***</o:_Aut=
Ensuite j'aimerais uniquement récupérer ***@*** le problème c'est qu'il n'y a pas vraiment de séparateur qui me le permette donc j'ai pensé à réaliser 2 FOR.
for /F "tokens=2 delims=>" %i IN (step1.txt) DO set myvar=%i
Pour récupérer ***@***</o:_Aut= (la j'ai un soucis quand je fais echo %myvar% il me met chemin d'accès introuvable car à mon avis il interprète </o:_Aut....
Après j'avais pensais a une commande dans se style :
for /F "tokens=1 delims=<" %i IN (%myvar%) DO set myvar2=%i qui théoriquement devrait me donner uniquement ***@***
Et après l'écrire à la suite des autres adresses dans un fichier echo %myvar% >> contacts.txt
Je n'ai pas trop d'idée pour exécuter automatiquement se script sur tous les fichiers *.msg du dossier courant.
Merci d'avance aux connaisseurs MS-DOS
Je ne connais pas grand chose en MS-DOS et je cherche à faire un script qui permet de récupérer dans X fichier différent contenu dans un dossier, une partie txt de chaque fichier.
J'aimerais en faite récupérer l'adresse mail de chaque mail que je reçois et la stocker dans un txt.
J'ai déjà quelques pistes
find "AuthorEmail dt" mail.msg > step1.txt
Cette commande me permet de récupérer cette ligne
---------- MAIL.MSG
<o:_AuthorEmail dt:dt=3D"string">***@***</o:_Aut=
Ensuite j'aimerais uniquement récupérer ***@*** le problème c'est qu'il n'y a pas vraiment de séparateur qui me le permette donc j'ai pensé à réaliser 2 FOR.
for /F "tokens=2 delims=>" %i IN (step1.txt) DO set myvar=%i
Pour récupérer ***@***</o:_Aut= (la j'ai un soucis quand je fais echo %myvar% il me met chemin d'accès introuvable car à mon avis il interprète </o:_Aut....
Après j'avais pensais a une commande dans se style :
for /F "tokens=1 delims=<" %i IN (%myvar%) DO set myvar2=%i qui théoriquement devrait me donner uniquement ***@***
Et après l'écrire à la suite des autres adresses dans un fichier echo %myvar% >> contacts.txt
Je n'ai pas trop d'idée pour exécuter automatiquement se script sur tous les fichiers *.msg du dossier courant.
Merci d'avance aux connaisseurs MS-DOS
A voir également:
- Script MS-DOS
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- 10 commande ms-dos - Guide
- Script cmd - Guide
3 réponses
jeannets
Messages postés
28245
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
5 989
bonjour,
Il y a ça aussi https://fr.emailextractorpro.com/
http://www.aspirateur-email.com/
Sinon, je crois que tu peux faire: find "AuthorEmail dt" mail.msg | sort /+32 > step1.txt
ceci va sortir un fichier texte trié à partir du 32ème caractère... en plus de la recherche primaire.
Il y a ça aussi https://fr.emailextractorpro.com/
http://www.aspirateur-email.com/
Sinon, je crois que tu peux faire: find "AuthorEmail dt" mail.msg | sort /+32 > step1.txt
ceci va sortir un fichier texte trié à partir du 32ème caractère... en plus de la recherche primaire.