Fichier Batch de suppression

Enness Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   -  
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je dois réaliser un fichier permettant la suppression de fichier contenu dans un répertoire nommé "corbeille".

j'ai crée une variable d'environnement "corbeille" qui contient le chemin vers ce répertoire.

Voici mon batch :

@echo off
rem on commence par tester s'il existe la corbeille n'est pas vide
set /a Compte=0

rem on compte le nombre d'element(s) dans la corbeille
For %%a In ("%corbeille%\*.*") Do Set /A Compte+=1


if "%Compte%" NEQ "0" (
set /a repvide=1
)

if %Compte%==0 (
set repvide=0
)

rem si notre compteur est different de 0, alors corbeille n'est pas vide et on demande de confirmer la suppression
rem si le compteur est vide, il n'y a rien dans la corbeille, donc rien a supprimer
if %repvide%==0 (
echo La corbeille est vide
goto fin
) else (
echo vous etes sur le point de supprimer definitivement le contenu de la corbeille
set reponse /P ="Continuer...[O,N]"
if %reponse%==o goto suppression
if %reponse%==n goto nonsuppression
)

:suppression
del %corbeille%
echo Suppression effectuee avec succes !
goto fin

:nonsuppression
echo la suppression n'a pas eu lieu
goto fin

:fin


Ca ne marche pas du tout ! Je n'en peut plus, ça fait presque 4 heures que je bataille dessus !

Si quelqu'un pouvait m'aider à savoir où ça coince...

Merci d'avance...vraiment ^^
A voir également:

2 réponses

rlo
 
bonjour,

Pour ma part, j'utilise deltree pour faire ca sous dos et rm -R sous unix, plus compliqué, c'est possible ;-)
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
les tests numériques n'ont pas de "
if %Compte% NEQ 0 (
les tests de chaines, oui
if "%reponse%"=="o" goto suppression

attention au format de la commande set /p
set /P reponse="Continuer...[O,N]"

et faire
del /q %corbeille%\*.*
0