Variable non stocker dans une double boucle for
Résolu
bentop
Messages postés
42
Date d'inscription
Statut
Membre
Dernière intervention
-
bentop Messages postés 42 Date d'inscription Statut Membre Dernière intervention -
bentop Messages postés 42 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je cherche à développer un petit script me permettant de compter le nombre de ligne de tous les fichiers .txt d'un dossier et les copier dans un autre répertoire s'il n'y a pas le bon nombre de ligne.
J'utilisais déjà une boucle for fonctionnant correctement pour compter le nombre de ligne d'un fichier (que j'ai réinjecter dans le code) cependant pour effectuer ma copie j'ai besoin des noms de chaque fichier, voici comment se présente mon code :
Le code semble fonctionner correctement quand je fais des tests, cependant le résultat final n'est pas convainquant. En effet, mon problème est que ma variable %COUNT% est vide lorsqu'elle est placée dans mes boucles. Dans mon cas je voudrais l'utiliser au niveau de mon "echo "boucle 2"".
A savoir ma variable %COUNT% ne ressort quand fin des deux boucles et je ne comprends pas pourquoi.
Sans la première boucle FOR qui me donne les noms de fichier, la variable %COUNT% n'est plus vide lorsque je la met en dehors de la boucle.
Dans l'espoir que vous puissiez m'éclairer.
Merci par avance.
Amicalement Ben.
Je cherche à développer un petit script me permettant de compter le nombre de ligne de tous les fichiers .txt d'un dossier et les copier dans un autre répertoire s'il n'y a pas le bon nombre de ligne.
J'utilisais déjà une boucle for fonctionnant correctement pour compter le nombre de ligne d'un fichier (que j'ai réinjecter dans le code) cependant pour effectuer ma copie j'ai besoin des noms de chaque fichier, voici comment se présente mon code :
setlocal enableDelayedExpansion
SET fichier=%%~nxi
SET Dossier="c:\monchemin"
for /r "%Dossier%" %%i in (*.txt) do (
SET /A COUNT=1
FOR /F "tokens=*" %%A IN (%dossier%\%fichier%) do (
SET /A COUNT+=1
echo "boucle 1"
echo %COUNT%
)
if %COUNT% NEQ 2 (COPY %Dossier%\%fichier% G:\result\%fichier%)
echo "boucle 2"
echo %COUNT%
)
echo "fin boucle"
echo %COUNT%
pause
endlocal
Le code semble fonctionner correctement quand je fais des tests, cependant le résultat final n'est pas convainquant. En effet, mon problème est que ma variable %COUNT% est vide lorsqu'elle est placée dans mes boucles. Dans mon cas je voudrais l'utiliser au niveau de mon "echo "boucle 2"".
A savoir ma variable %COUNT% ne ressort quand fin des deux boucles et je ne comprends pas pourquoi.
Sans la première boucle FOR qui me donne les noms de fichier, la variable %COUNT% n'est plus vide lorsque je la met en dehors de la boucle.
Dans l'espoir que vous puissiez m'éclairer.
Merci par avance.
Amicalement Ben.
A voir également:
- Variable non stocker dans une double boucle for
- Double ecran - Guide
- Whatsapp double sim - Guide
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Double driver - Télécharger - Pilotes & Matériel
- Double appel - Guide