[Batch] Chercher dans plusieurs dossiers chaine de caractère dans fichier

Résolu
Ptitgrand Messages postés 13 Statut Membre -  
Ptitgrand Messages postés 13 Statut Membre -
Bonjour,

J'aimerais savoir si vous pourriez m'aider.

Le but de mon programme est de récupérer des fichiers images présents dans un dossier dont je ne connais pas le nom.
Dans ce dossier, il y a un fichier qui contient une chaîne de caractère me permettant de retrouver le bon dossier parmi plusieurs répertoires.

Je cherche donc à concevoir un petit programme qui pourrait rechercher dans différents dossiers (de nom aléatoire) un fichier "txt" qui contient une chaîne de caractère (TOTO) puis j'aimerais ensuite récupérer le chemin qui mène au fichier.

Exemple :

Voici les différents fichiers :

C:\Test\ABC005\ex.txt (Contiens ligne 25 : abv)
C:\Test\ABC001\xe.txt (Contiens ligne 25 : abn)
C:\Test\ABC008\ab.txt (Contiens ligne 25 : TOTO)

J'aimerais exécuter le programme en batch pour récupérer le chemin "C:\Test\ABC008" afin de pouvoir par la suite copier les images dans un autre répertoire.

Cordialement,
DUBOIS Nicolas

2 réponses

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Bonjour,

    Tu peux essayer quelque chose comme ça :
    for /f "delims=" %%A in ('2^>nul dir /b /s C:\Test\*.txt') do (
    findstr /C:"TOTO" "%%~A" >nul && echo %%~dpA
    )
    pause
    exit


    1
    1. Ptitgrand Messages postés 13 Statut Membre
       
      Génial !
      Cela à fonctionné, je vous remercie :)
      0