Commande for /f : récupération d'une donnée dans un fichier

Résolu/Fermé
vayleme Messages postés 86 Date d'inscription mardi 27 juin 2017 Statut Membre Dernière intervention 11 novembre 2020 - 19 juil. 2017 à 12:39
vayleme Messages postés 86 Date d'inscription mardi 27 juin 2017 Statut Membre Dernière intervention 11 novembre 2020 - 19 juil. 2017 à 18:09
Bonjour,

Je n'arrive pas à récupérer une donnée contenue dans une ligne d'un fichier texte.
Voici à quoi ressemble le fichier.

donnee : 1
) donnee : 2
- donnee : 3
$ donnee : 4

la valeur en fin de ligne est indéterminée, j'arrive à récupérer la donnée de la dernière ligne et de l'avant-dernière avec ces commandes :

for /f "tokens=2 delims=:" %%a in (fichier.txt) do set a=%%a
for /f "tokens=2 delims=: eol=$" %%b in (fichier.txt) do set b=%%b


Mais je ne trouve pas les commandes pour les deux premières lignes.
J'espère que vous pourrez m'aider.
A voir également:

2 réponses

barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
Modifié le 19 juil. 2017 à 14:04
Bonjour,

Il y a un espace entre le caractère spécial et la donnée, donc ça devrait être simple.

for /f "eol=: tokens=2 delims= " %%a in (fichier.txt) do set var=%%a



“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
1
vayleme Messages postés 86 Date d'inscription mardi 27 juin 2017 Statut Membre Dernière intervention 11 novembre 2020 16
19 juil. 2017 à 14:37
Bonjour,
décidément tu m'aides beaucoup ces derniers jours barnabe ^^ encore merci de ta réponse mais malheureusement ta commande récupère la donnée de la dernière ligne.
voici le retour de la commande.
for /f "eol=: tokens=2 delims= " %%a in (fichier.txt) do echo %%a

renvoie
1
2
3
4

et si je fais
for /f "eol=: tokens=2 delims= " %%a in (fichier.txt) do set var=%%a

seul le "4" se trouve dans la variable. Je ne souhaite que le "2" et une autre commande pour conserver que le "1".
0
barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905 > vayleme Messages postés 86 Date d'inscription mardi 27 juin 2017 Statut Membre Dernière intervention 11 novembre 2020
19 juil. 2017 à 15:46
Je ne comprend pas bien quelle partie tu veux récupérer, un vrai échantillon de fichier txt serait le bienvenu.
0
vayleme Messages postés 86 Date d'inscription mardi 27 juin 2017 Statut Membre Dernière intervention 11 novembre 2020 16 > barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024
19 juil. 2017 à 15:52
le fichier txt contient les 4 lignes que j'ai écrites plus haut, le but est de récupérer dans 4 variables différentes les valeurs de la fin de chaque ligne (1, 2, 3, 4) sachant que ces valeurs ne sont pas statiques. Mais finalement, je vien de trouver à l'instant,mais c'est beaucoup du bricolage, je met ma solution dans le poste et je laisse le sujet ouvert une journée au cas ou quelqu'un à une meilleure idée.
0