Script batch recherche de chaine et renvoi resultat

Zorc -  
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je suis confronté à un problème dans mon script batch.
Voici le cheminement du script que j aimerais mettre en place:

Pour tous les fichiers contenu dans c:\dossier\*.txt rechercher la chaine "toto". Si le fichier contient cette chaine "toto" renvoyer le chemin de ce fichier dans c:\resultat.txt

Voila ce que j'ai essayer mais qui ne fonctionne pas

FOR /F "tokens=1,2* delims=: " %%A IN ('FIND /C "toto" c:\*.txt) DO (
IF %%A GTR 0 ( %%B >>resultat.txt )
)

Merci de votre aide





A voir également:

3 réponses

barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Tu ne cherches pas dans le bon dossier :

FIND /C "toto" c:\*.txt
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Et je pense qu'il y a plus simple à faire :

FOR %%A IN (FIND "toto" c:\dossier\*.txt) DO (%%A >> c:\resultat.txt)
0
TAC
 
Et Peut on remplacer "toto" par une variable déclaré précedement ?

SET VARIABLE=toto

FOR /F "tokens=1,2* delims=: " %%A IN ('FIND /C "%VARIABLE%" c:\*.txt) DO (
IF %%A GTR 0 ( %%B >>resultat.txt ) )

Merci
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
oui ça fonctionne avec une variable.
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
for /f "tokens=1-3 delims=: " %%A in ('find /c "toto" C:\dossier\*.txt ') do if %%C NEQ 0 echo %%B >> c:\resultat.txt 
0