Supprimer repertoire avec un batch

Résolu/Fermé
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 - 17 févr. 2009 à 11:16
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 - 19 févr. 2009 à 22:01
Bonjour tout le monde.

Je suis en train de creer une commande batch dont une partie est comme cela:


IF not EXIST "C:\Program Files\XXXX" (
echo Aucunes suppressions effectuees
)ELSE==goto SUPPR1
:goto SUPPR1
rd /s /q "C:\Program Files\XXXX" (
echo C:\Program Files\XXXX supprime
)
echo.
echo.


Dans l'absolue, la condition de suppression fonctionne correctement, mais il apparait sur la console ce message:

Le fichier spécifié est introuvable
C:\Program Files\XXXX supprime


Et donc la suppression de mon repertoire se passe correctement, mais je voudrais essayer que la console ne m'affiche pas:

Le fichier spécifié est introuvable

Vu que c'est faux puisqu'il trouve mon repertoire et le supprime, et surtout je spécifie un repertoire et non un fichier.

Merci d'avance à tout ceux qui m'aideront.

A++

A voir également:

11 réponses

xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
17 févr. 2009 à 11:20
Euh je vois quelque petite erreur dans ton script je pense...
j'aurai fais ca

IF not EXIST "C:\Program Files\XXXX" (
echo Aucunes suppressions effectuees
)
ELSE(
rd /s /q "C:\Program Files\XXXX"
echo C:\Program Files\XXXX supprime
)
echo.
echo.

Je vois pas l'utilité de ton goto suppr1..
0
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 92
17 févr. 2009 à 11:37
Bonjour xav3601

Oui c'est vrai tu as raison j'avais un peu peur de rentrer trop de commande avec ELSE.

Je l'ai modifié mais le' soucis reste le même et je ne sais pas pourquoi la console me parle de fichier.
Est ce que je dois spécifié quelque chose aprés "C:\Program Files\XXXX"?

Je dois y aller je repasse ce soir.

Merci pour ton aide.

A++
0
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
17 févr. 2009 à 11:40
Essaye comme ca:

cmd.exe /C rd /s /q "C:\Program Files\XXXX"

si ca marche pas essayer de lancer ta commande directement a partir d'une fenetre dos et vois ce qu'elle te retourne!
0
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 92
17 févr. 2009 à 22:22
Re,

Non la commande ne fonctionne pas mieux et le mess est le même sous fenêtre DOS. Ne faudrait il pas que je spécifie quelque chose à la fin de "C:\Program Files\XXXX" pour signaler que c'est un repertoire:

"C:\Program Files\XXXX\nul"
ou autre chose dans ce style?

Merci en tout cas de ton aide

A++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
18 févr. 2009 à 07:54
TU peux essayer en remplacent la fonction rd par rmdir!
0
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 92
18 févr. 2009 à 22:24
Salut Xav3601,

Le résultat est toujours le même avec cette commande:

Le fichier spécifié est introuvable.

Et je n'est vraiment aucunes idées...

Est ce que la fonction IF EXIST fonctionne aussi avec un repetoire? En connais tu une autre pour tester la présence du repertoire?

L'erreure peut venir de la recherche comme la suppression je pense.

Merci
A++
0
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
19 févr. 2009 à 07:52
As tu essayer de lancer la commande directement sur le repertoire a partir d'une fenetre dos pour voir si tu recois la meme erreur ou pas?
0
Utilisateur anonyme
19 févr. 2009 à 08:26
salut

essai ça :

echo off

cls

IF EXIST "C:\essai" (
rd /s /q "C:\essai"
echo C:\essai supprime

) ELSE (
echo Aucune suppression effectuée
)

echo.

pause
0
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 92
19 févr. 2009 à 19:04
Salut webernard,

Bravo et merci!

Ca fonctionne comme ça sans soucis, c'est gentil de ta part.

Peux tu me donner l'explication de la fonction cls stp?

Merci beaucoup

A++
0
Utilisateur anonyme
19 févr. 2009 à 20:35
cls = clear screen ( efface écran )

PS :

HELP à l'invite de commande te donne la liste de commande

commande/? : une aide sur la commande

exemple : cls/? : efface l'écran

Merci de mettre "Résolu" si tu n'as pas d'autres questions
0
florinator Messages postés 552 Date d'inscription samedi 15 décembre 2007 Statut Membre Dernière intervention 15 avril 2012 92
19 févr. 2009 à 22:01
Re,

Ok ça marche et merci pour les infos à tout les 2.

A++
0