[Batch] Extraction chaîne de caractères

Résolu/Fermé
jejeTech
Messages postés
83
Date d'inscription
vendredi 6 janvier 2006
Statut
Membre
Dernière intervention
19 avril 2012
- 2 juin 2006 à 09:34
logon313
Messages postés
41
Date d'inscription
mercredi 25 décembre 2013
Statut
Membre
Dernière intervention
2 novembre 2016
- 13 juil. 2016 à 16:09
Salut,

j'ai un problème avec la manipulation d'une chaîne de caractères. J'ai un fichier (temp2.txt) qui contient une chaîne de caractètes comme tel :

1:4162

La chose que je veux faire c'est d'extraire le chiffre "4162" afin de la placer dans une variable temporairement. J'utilise la commande FOR afin de réaliser ceci.

Voici la ligne qui doit me permettre de faire cette extraction :

FOR /F "eol=: tokens=1 " %i in temp2.txt do @echo %i


Merci d'avance de votre aide

15 réponses

Pool Orion
Messages postés
124
Date d'inscription
mercredi 23 février 2005
Statut
Membre
Dernière intervention
15 juin 2007
55
2 juin 2006 à 11:40
Désolé, j'ai été obligé de chercher un peu aussi. Il faut utiliser les variables avec deux fois le signe %.

-->

pause
@echo off
FOR /F "tokens=1,2 delims=:" %%i in (temp2.txt) do @echo %%i et %%j
pause

donne le résultat 1 et 4162
20
ga1841
Messages postés
6
Date d'inscription
mardi 17 avril 2007
Statut
Membre
Dernière intervention
3 mai 2007
7
3 mai 2007 à 09:50
J'ai remarqué que tu maitrisé bien la commande FOR et j'ai un pb avec une ligne de comande FOR. Cette ligne est correcte car lancé seul dans l'invite de commande j'obtien le résultat voulu mais intégré au reste de mon script elle ne passe plu du tout. si tu connai la raison et la solution merci de me le faire savoir. Merci d'avance
0
xed > ga1841
Messages postés
6
Date d'inscription
mardi 17 avril 2007
Statut
Membre
Dernière intervention
3 mai 2007

30 août 2007 à 09:59
Bonjour,

Dans une boucle FOR quand tu lances directement la cmd, il y a 1 seul % devant ta varialbe, par exemple %i
Mais qd tu mets cette boucle dans un Batch, il faut y mettre 2 fois % donc %%i

Voilà tout.
0