Supprimer tous les fichiers et répertoires de l'invite de commande

3

J'ai la situation suivante. J'ai un dossier Temp qui est rempli avec toutes sortes de fichiers et de répertoires. Je veux / ai besoin de le nettoyer régulièrement, mais je ne peux pas comprendre une commande ou un ensemble de commandes MS-DOS pour le faire. La commande appelée erase supprime tous les fichiers, donc pas de problème, mais les répertoires sont la chose avec laquelle je lutte. Je sais que certains d'entre vous pourraient suggérer de supprimer le répertoire Temp, puis de le créer, ce qui n'est malheureusement pas une option pour moi, car je DOIS le garder intact, car cela perturbe le système.

Des idées, bonnes personnes? :)

Adamas
la source
10
Voulez-vous réellement dire MS-DOS ou voulez-vous dire Invite de commandes dans Windows?
Graham Wager
Yessir, j'ai beaucoup fait.
Adam
jetez un oeil à cette réponse: stackoverflow.com/questions/17702040/…
Mohsen

Réponses:

10

Dans un système MS-DOS, utilisez deltree.

DELTREE [/Y] directory\*.*

Depuis une fenêtre de commande dans les dernières versions, vous pouvez utiliser rd.exeourmdir.exe

rd directory/* /s

ou

rmdir directory/* /s

andrade
la source
1
DELTREE est hors de question, puisque nous parlons essentiellement de commande dans Winodws 8. Quant à rd et rmdir, pour une raison quelconque, aucun d’entre eux ne fait ce dont j'ai besoin. Je veux dire, si je rm / rmdir c: \ q * / s il 1) demande une confirmation, ce qui ne devrait pas à cause de / s 2) ne fait rien quand je le confirme. Bizarre ... Toutes les autres idées, bonnes personnes de SuperUser :)
adamas
0

Si vous ne voulez pas qu’il vous demande une confirmation, vous devez également /Qactiver le commutateur.

J'ai un fichier batch qui fait ce qui suit:

rmdir E:\Documents /s /q

Je voulais que le contenu du dossier Documents soit supprimé, mais cette commande supprime tout le dossier. J'ai essayé E: \ Documents * mais en vain.

Donc ce que j'ai fini par faire était:

rmdir E:\Documents\*.* /s /q
mkdir E:\Documents
Gui Neto
la source
0
@del /S /Q /F temp\* >nul
@for /d %%i in (temp\*) do @rmdir /s /q "%%i"
Kofifus
la source
Bien que cela puisse répondre à la question, ce serait une meilleure réponse si vous pouviez expliquer pourquoi .
DavidPostill