Datei durch Angabe des vollständigen Pfads löschen - warum funktioniert das?

1574
meatspace

Der Versuch, einen Ordner im Explorer zu löschen, ist mit fehlgeschlagen error 0x80070091: the directory is not empty. delVon der Admin-Eingabeaufforderung wurde ein Fehler ausgegeben, der die Berechtigung verweigerte. Berechtigungen und Eigentum in Ordnung.

del \\?\c:\path\to\foldergelungen Warum funktioniert das wann del c:\path\to\foldernicht?

BEARBEITEN: Die Länge des Pfads betrug 29 Zeichen, wie in: C:\users\A-AAAAAA\desktop\BBB(Das tatsächliche Format des Pfads, dessen persönliche Daten geändert wurden - die Anzahl der Zeichen stimmt überein. BBB ist der betreffende Ordner).

1
Um was für ein Dateisystem handelt es sich und welches Betriebssystem verwenden Sie? SadBunny vor 9 Jahren 0
@SadBunny NTFS, Windows 7. meatspace vor 9 Jahren 0

2 Antworten auf die Frage

2
Kristian

Ich denke, der Grund für den "vollständigen Pfad" ist, dass Windows es möglicherweise nicht als Ordner anzeigt, wenn mit einem vollständig qualifizierten Pfad darauf zugegriffen wird.

Der delBefehl wird zum Löschen von Dateien verwendet.

Das rd Befehl (Verzeichnis entfernen) wird zum Löschen von Ordnern verwendet.

Wenn Sie einen Ordner löschen möchten, führen Sie Folgendes aus:

rd C:\path\to\folder

Wenn Sie eine Ordnerstruktur (einschließlich Dateien und Unterordner) löschen möchten, führen Sie Folgendes aus:

rd /s C:\path\to\folder

Wenn Sie den Befehl del C:\path\to\folderan der Eingabeaufforderung ausführen, wird ein Ordner tatsächlich nicht gelöscht, sondern der Inhalt dieses Ordners wird gelöscht. Denken Sie also eher an einen Alias ​​für del C:\path\to\folder\*.

Guter Punkt. Ich hätte angeben sollen, dass die von `del` zurückgegebene Aufforderung zur Bestätigung der Löschung von` .. \ BBB \ * `auffordert. Leider kann ich diesen Ordner nicht neu erstellen, um `rd` zu testen. meatspace vor 9 Jahren 0
1
SadBunny

Es war wahrscheinlich ein sehr langer Pfadname oder Dateiname? Ich habe noch nie davon gehört, aber ich habe ein bisschen gegoogelt und anscheinend kann Ihre Syntax verwendet werden, um diese zu löschen.

http://ss64.com/nt/del.html :

Undeletable Files  Files are sometimes created with the very long filenames or reserved names: CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN, NUL  To delete these use the syntax: DEL \\.\C:\somedir\LPT1 Alternatively SUBST a drive letter to the folder containing the file. 
Es wurde nicht die 260-Zeichen-Grenze überschritten, die Windows im Allgemeinen auferlegt. Siehe https://msdn.microsoft.com/de-de/library/aa365247.aspx meatspace vor 9 Jahren 0