Bonjour,
J'aimerai savoir comment faire pour créer un script qui vérifier des fichiers se trouvant dans C:\Users\toto avec comme extension .test et .exp et si les fichiers sont présent alors sortir avec un code erreur 1
Merci de vos retours
Bonjour,
J'aimerai savoir comment faire pour créer un script qui vérifier des fichiers se trouvant dans C:\Users\toto avec comme extension .test et .exp et si les fichiers sont présent alors sortir avec un code erreur 1
Merci de vos retours
Je vous donne un premier indice :
Cette commande affiche le nombre de fichiers .txt dans mon répertoire (prend aussi les sous-répertoire)
Code : Sélectionner tout - Visualiser dans une fenêtre à part Get-ChildItem -Path 'M:\monrep\t1' -recurse -filter *.txt | Group-Object -Property Directory
Vous le faites en doubles pour vos deux types de fichiers.
Vous mettez le résultat dans une variable qui lui est propre
Un petit IF sur les deux variables et là, un petit Exit(1)
Je vous laisse faire le code, si il ne va pas, postez le (En renomant votre répertoire) et nous verrons.
Bisous
J'ai essayé avec le code ci-dessous mais ca ne marche pas, je veux juste que le batch pante si il trouve des fichiers avec certaines extensions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if exist "C:\Users\toto\*.exp* ( set CR=1 goto fin)
Avez-vous essayer cela ?
Si je comprend bien, vous n'avez pas besoin d'avoir un fichier de chaque extension pour quitter le script avec le code à 1.
C'est ce que fais ce code, a vous de jouer pour mettre les extensions qui vont bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Get-ChildItem -Path 'M:\MonRep\t' -Include *.txt , *.prc -Recurse -Force | ForEach-Object { exit(1) }
En fait j'ai juste besoin de checker dans le répertoire C:\Users\toto si j'ai des fichiers avec comme extension .test ou .exp pas forcement les deux, et si c'est le cas je dois avoir un code retour 1
merci pour ta ligne de commande mais je ne dois pas preciser if exist en debut de batch ?
Non
En fait, ce que fait mon code c'est parcourir, pour ton répertoire (Et sous répertoire si tu en as) la liste des fichiers qui ont une extensions parmis la liste derrière la clause -Include
Si tu rentres dans le foreach, alors tu as au moins un fichier avec l'extension souhaité, donc tu peux dire à ton script de faire l'exit
Si tu as des sous répertoires dans ton dossier, et que tu ne veux pas les lire, il faut enlever la clause -recurse
J'espére avoir été assez clair, n'hésites pas si besoin
exemple :
Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 dir /b /a-d "chemin_dossier\*.ext" "chemin_dossier\*.abc" if not errorlevel 1 (verify error 2>nul) else ( verify >nul) echo %errorlevel%
Fichier uniquement dans dossier C:\Users\toto
Code : Sélectionner tout - Visualiser dans une fenêtre à part dir /a-d "C:\Users\toto\*.test" "C:\Users\toto\*.exp" 1>nul 2>&1 &&exit 1
Fichier dans dans dossier ou sous-dossier C:\Users\toto
Code : Sélectionner tout - Visualiser dans une fenêtre à part dir /a-d /s "C:\Users\toto\*.test" "C:\Users\toto\*.exp" 1>nul 2>&1 &&exit 1
Partager