Batch /findstr

[Fermé]
Signaler
Messages postés
96
Date d'inscription
mercredi 18 juin 2008
Statut
Membre
Dernière intervention
5 juin 2009
-
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
-
Bonjour,
j'ai un soucis avec la commande findstr et j'ai besoin de votre aide

dans un script batch sous windows je veux rechercher et afficher une chaine de caractères je m'explique par un exemple

mon script:

@echo off
set var=1 
set var_oracle=2
set oracle=3 

for /f "delims=" %%i in ('type "%0" ^|findstr /i /r "var"') do echo %%i


le script (.cmd) s'execute sans erreur sauf qu'il m'affiche toute la ligne où y a la chaine:
set var=1 
set var_oracle=2
for /f "delims=" %%i in ('type "%0" ^|findstr /i /r "var"') do echo %%i


et ce que je cherche à faire c'est afficher juste la variable et sa valeur comme (var=1)

quelqu'un à une idée?

merci pour votre aide

5 réponses

Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 333
hello
essayer avec "tokens=2 delims= "
Messages postés
96
Date d'inscription
mercredi 18 juin 2008
Statut
Membre
Dernière intervention
5 juin 2009
13
bonjour
merci pour la reponse
j'ai essayé mais ça ne donne plus rien, aucun résultat ne s'affiche :s
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 333
avec delim=<espace>" ?
Messages postés
96
Date d'inscription
mercredi 18 juin 2008
Statut
Membre
Dernière intervention
5 juin 2009
13
oui ça marche , j'ai pas remarqué l'espace,
merci :)
mais comment je peux exclure la ligne du for de la recherche. le résultat actuel est

var=1 
var_oracle=2
/f
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 333
essaye avec /b et "set var" pour ne prendre que ce qui est en début de ligne

for /f "tokens=2 delims= " %%i in ('type a2.bat ^|findstr /i /b /r "set var"') do echo %%i