Bonjour,
j'aurai une question liée à la logique d'exécution dans un fichier BAT.
Voici le script me permettant de récupérer la liste des lecteurs et d'exécuter un "DIR" pour chaque lecteur et le consolider dans un fichier global.
Code :
- @echo off
- setlocal enabledelayedexpansion
- WMIC LOGICALDISK where drivetype=3 get caption>%~n0.tmp
- for /f "tokens=1-3 skip=1" %%a in ('type "%~n0.tmp"') do call :displayinfo %%a
- del "%~n0.tmp"
- echo FIN DU SCRIPT AVANT LE EOF
- goto :etapefin
- :displayinfo
- set drive=%1
- echo Le drive est %drive%
- echo lancement du DIR
- REM call dir /A HS /s /b %drive%\ >> d:\Dir_ALL.txt
- echo Fin du DIR
- :etape2
- echo voici l'etape 2
- echo blablalblablalballbabal
- :etapefin
- echo voici letape fin apres la boucle
- @pause
- @exit
- @pause
|
Ce que j'aimerai est que le "call displayinfo" se fasse uniquement sur la partie ":displayinfo" mais que la partie "etape 2" et le reste du script ne soient pas inclus dans la boucle qui fait le "do call displayinfo".
Est-ce que quelqu'un aurait une idée de comment indiquer la fin de l'exécution d'une boucle en bat ?
Merci