[MS DOS] récupérer résultat commande find
Fermé
Darkmikah
Messages postés
8
Date d'inscription
mercredi 17 janvier 2007
Statut
Membre
Dernière intervention
12 octobre 2012
-
17 janv. 2007 à 15:19
billabong_vb - 30 juin 2009 à 17:59
billabong_vb - 30 juin 2009 à 17:59
A voir également:
- Ms dos find
- Fonction ms dos non valide - Forum Windows 8 / 8.1
- Find vba - Astuces et Solutions
- Find grep ✓ - Forum Linux / Unix
- 10 commande ms-dos - Guide
- Console dos ✓ - Forum Programmation
6 réponses
Salut,
Utilise la commande FOR /F comme ceci:
for /F "usebackq tokens=3 delims= " %i IN (`find /c monfichier`) DO set myvar=%i
ici ce qui est entre ` ` est une commande DOS. C'est le résultat de cette commande qui sera prise par le FOR.
Explication de delims= et tokens=3 :
Mon find d'exmple me renvoyait: ---------- MF2MCAIR.S19: 1
C'est le "1" que je veux! delims=<espace> va couper la chaine en 3 parties, c'est a dire à chaque espace.
j'ai donc 3 chaines "----------" , "MF2MCAIR.S19:" et "1"
Token=3 va prendre la 3eme chaine et la mettre dans la variable i.
A la fin je fais juste un "set myvar=%i" pour reccupérer la valeur et la mettre dans la variable "i"
Attention si tu fais cette commande dans un batch il faut doubler les % et écrire "set mayvar=%%i". Enfin il me semble...
J'espère que c'est pas trop tard pour t'aider!
Voilà.
Utilise la commande FOR /F comme ceci:
for /F "usebackq tokens=3 delims= " %i IN (`find /c monfichier`) DO set myvar=%i
ici ce qui est entre ` ` est une commande DOS. C'est le résultat de cette commande qui sera prise par le FOR.
Explication de delims= et tokens=3 :
Mon find d'exmple me renvoyait: ---------- MF2MCAIR.S19: 1
C'est le "1" que je veux! delims=<espace> va couper la chaine en 3 parties, c'est a dire à chaque espace.
j'ai donc 3 chaines "----------" , "MF2MCAIR.S19:" et "1"
Token=3 va prendre la 3eme chaine et la mettre dans la variable i.
A la fin je fais juste un "set myvar=%i" pour reccupérer la valeur et la mettre dans la variable "i"
Attention si tu fais cette commande dans un batch il faut doubler les % et écrire "set mayvar=%%i". Enfin il me semble...
J'espère que c'est pas trop tard pour t'aider!
Voilà.