Quel est l'équivalent Windows de rm -r [directory-name]
?
Quel est l'équivalent Windows de rm -r [directory-name]
?
Réponses:
.deltree
si je me souviens de mon DOS
Il semble que cela a été mis à jour ... voici ce que vous voulez:
Cela supprime le répertoire C:\test
avec les invites suivantes:
rmdir c:\test /s
Cela fait la même chose, sans invites:
rmdir c:\test /s /q
En ce qui concerne la partie sudo de votre question, si vous avez besoin de davantage de privilèges, vous pouvez d’abord ouvrir un nouveau shell en tant que compte utilisateur à l’aide de la runas
commande, comme ceci:
runas /user:Administrator cmd
rmdir c:\test /s /q
deltree
est une ancienne commande DOS. Il a été supprimé de XP et remplacé parrmdir /s
findstr
a le même paramètre, ce qui est plus logique si c'est le cas, alors peut-être sont-ils identiques pour la cohérence.
Si vous souhaitez supprimer une structure de dossier longue et compliquée de l'invite de commande que RmDir ne touchera pas et que même l'explorateur ne pourra pas afficher, j'ai trouvé que robocopy peut s'avérer très efficace pour supprimer la structure. Dans l'exemple ci-dessous, nous avons une structure massive à l'intérieur de l'administrateur de dossiers. La structure est tellement profonde que rien ne peut l'enlever. Nous créons un nouveau dossier vide appelé (curieusement!) "Nouveau dossier". Nous utilisons ensuite la commande robocopy, en lui indiquant que le dossier source est "nouveau dossier" et que le dossier de destination est "D: \ Administrateur" avec le paramètre / MIR, ce qui signifie qu'il purgera tout ce qui ne se trouve pas dans le dossier source.
robocopy "D:\new folder" D:\Administrator /MIR
Dans ce cas, les chemins des dossiers étaient si longs qu'ils ne pourraient même pas être insérés dans la mémoire tampon de la fenêtre d'invite de commande, mais Robocopy parcourt la structure et supprime tous les fichiers et dossiers "supplémentaires" (c'est-à-dire tout ce qui ne se trouve pas dans le nouveau dossier vide, ce qui est tout. ).
Si vous utilisez Windows Vista +, vous pouvez effectuer les opérations suivantes dans PowerShell:
rm C:\path\to\delete -r -f[orce]
-f
est ambigu. Mais vous pouvez courirrm -r -force <path>
Pour moi, ce qui fonctionne est
del /s dir
Vous pouvez ajouter /q
pour désactiver la confirmation. Je n'ai jamais réussi à rmdir
travailler (sous XP)
dir
n'est également pas supprimé.
Si vous avez un très long chemin (comme je l’ai fait à cause d’une erreur du programme Java), même Robocopy ne peut pas le faire. Il est descendu sur mon chemin pendant environ 30 secondes puis pendu.
Ma solution: si vous pouvez déplacer l'intégralité du chemin du problème d'un dossier à un autre, vous pouvez supprimer de manière récurrente et répétitive certains escaliers de répertoires à partir du haut.
Ce lot joue au pingpong entre les deux répertoires leer et leer2 et élimine 8 "bibliothèques" à chaque fois. Si votre chemin contient des fichiers, vous devez ajouter d'autres commandes pour les effacer.
recurdel.cmd
:loop
move c:\leer\libraries\libraries\libraries\libraries\libraries\libraries\libraries\libraries c:\leer2
rd /S /Q c:\leer\libraries
move c:\leer2\libraries\libraries\libraries\libraries\libraries\libraries\libraries\libraries c:\leer
rd /S /Q c:\leer2\libraries
GOTO loop
À partir de CMD, exécutez simplement RD / s C: \ path \ to \ delete Appuyez sur Y pour répondre.
/ s garantit que tous les sous-répertoires sont également supprimés.
Référence Exécuter l'aide RD à partir de la ligne de commande
rd
et rmdir
sont les mêmes.) Peut-être que cela ferait un commentaire là-bas.
Ceci supprimera "mon dossier" sans invite:
rd /s /q "C:\Users\gourav.g\AppData\Roaming\my folder"