Bonjour,
Je suis relativement débutant en batch et je travaille sur un wrapper permettant d'analyser des fichiers.
Dans un dossier rep1, j'ai des fichiers dont les noms sont structurés comme suit :
- AB_xxxxxx.txt
- AD_ffffffff.txt
Dans un second dossier rep2, j'ai des fichiers dont les noms sont structurés ainsi :
- AD_aaaa_eee_rrr.txt
- AB_ddddd.txt
Je souhaite parcourir le dossier rep1 et extraire le préfixe des fichiers, puis parcourir le dossier rep2 et si les préfixes sont les mêmes lancer une commande sur les deux fichiers partageant le même préfixe. Cette commande nécessite les chemin d'accès absolus vers les fichiers.
J'ai écrit ce début de code:
Ces lignes me permettent bien de récupérer les préfixes et de les comparer mais elles ne permettent pas d'obtenir les chemins d'accès absolus. J'ai essayé de combiner, par exemple, %basedir%\%%a_%%b%%c mais ce n'est pas reconnu comme un chemin d'accès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 set targetdir=C:\Documents\rep1\test\ set basedir=D:\Documents\rep2\test\ for /f "tokens=1,2 delims=@" %%i in ('dir /b %targetdir%\*.txt') do ( for /f "tokens=1,2* delims=_" %%a in ('dir /b %basedir%\*.txt') do if "%%i" EQU "%%a" ( command .... ) )
Pourriez-vous m'aider,
Merci d'avance
Partager