Was ist das Windows-Äquivalent rm -r [directory-name]
?
Was ist das Windows-Äquivalent rm -r [directory-name]
?
Antworten:
.deltree
wenn ich mich an mein DOS erinnere
Es scheint, dass es aktualisiert wurde ... das ist, was Sie wollen:
Dadurch wird das Verzeichnis C:\test
mit folgenden Eingabeaufforderungen entfernt:
rmdir c:\test /s
Dies funktioniert genauso ohne Aufforderungen:
rmdir c:\test /s /q
In Bezug auf den sudo-Teil Ihrer Frage können Sie, wenn Sie weitere Berechtigungen benötigen, zunächst eine neue Shell als ein anderes Benutzerkonto mit dem folgenden runas
Befehl öffnen :
runas /user:Administrator cmd
rmdir c:\test /s /q
deltree
ist ein alter DOS-Befehl. Es wurde in XP entfernt und durchrmdir /s
findstr
hat den gleichen Parameter, was sinnvoller ist, vielleicht sind sie also für die Konsistenz gleich.
Wenn Sie eine lange und komplizierte Ordnerstruktur aus der Eingabeaufforderung löschen möchten, die RmDir nicht berührt und die nicht einmal der Explorer anzeigen kann, kann Robocopy die Struktur sehr effizient entfernen. Im folgenden Beispiel befindet sich eine massive Struktur innerhalb des Ordneradministrators. Die Struktur ist so tief, dass nichts sie entfernen kann. Wir erstellen einen neuen leeren Ordner, der (seltsamerweise!) "Neuer Ordner" heißt. Anschließend verwenden wir den Befehl robocopy und teilen ihm mit, dass der Quellordner "neuer Ordner" und der Zielordner "D: \ Administrator" mit dem Parameter / MIR ist. Dies bedeutet, dass alles gelöscht wird, was sich nicht im Quellordner befindet.
robocopy "D:\new folder" D:\Administrator /MIR
In diesem Fall waren die Ordnerpfade so lang, dass sie nicht einmal in das Eingabeaufforderungsfenster für den Bildschirmpuffer passten, aber Robocopy durchläuft die Struktur und entfernt alle "zusätzlichen" Dateien und Ordner (dh alles, was sich nicht im neuen leeren Ordner befindet, was alles ist) ).
In PowerShell können Sie unter Windows Vista + Folgendes tun:
rm C:\path\to\delete -r -f[orce]
-f
ist mehrdeutig. Aber Sie können laufenrm -r -force <path>
Was für mich funktioniert, ist
del /s dir
Sie können hinzufügen /q
, um die Bestätigung zu deaktivieren. Ich habe es nie geschafft zu rmdir
arbeiten (auf XP)
dir
auch nicht entfernt.
Wenn Sie einen sehr, sehr langen Weg haben (wie ich es aufgrund eines Java-Programmfehlers getan habe), kann selbst eine Robokopie dies nicht. Es stieg ungefähr 30 Sekunden lang in meinen Weg und hing dann.
Meine Lösung: Wenn Sie den gesamten Problempfad von einem Ordner in einen anderen verschieben können, können Sie einige Verzeichnisstufen von oben rekursiv und wiederholt entfernen.
Dieser Batch spielt Pingpong zwischen den beiden Verzeichnissen leer und leer2 und schneidet jedes Mal 8 'Bibliotheken' weg. Wenn Ihr Pfad Dateien enthält, müssen Sie weitere Befehle hinzufügen, um sie zu löschen.
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
Von CMD Führen Sie einfach RD / s C: \ path \ to \ delete aus, und drücken Sie Y, um zur Eingabeaufforderung zu gelangen
/ s stellt sicher, dass auch alle Unterverzeichnisse gelöscht werden.
Referenz Führen Sie help RD über die Befehlszeile aus
rd
und rmdir
sind gleich.) Vielleicht würde es da als Kommentar passen.
Dies löscht "meinen Ordner" ohne Aufforderung:
rd /s /q "C:\Users\gourav.g\AppData\Roaming\my folder"