Frage So löschen Sie eine Datei mit einem Pfad, der zu lang ist, um gelöscht zu werden [duplizieren]


Diese Frage hat hier bereits eine Antwort:

Ich habe mit einem Computer-Quellcode gearbeitet, den ich gefunden habe und wusste nicht, dass es eine Cache-Datei erstellt, die einen sehr langen Namen hat und jetzt kann ich nicht die 2 davon löschen.

Ich habe versucht, es in einen kürzeren Namen umzubenennen, aber ich kann nichts mit der Datei machen, ich habe auch versucht, meinen Computer neu zu starten und zu sehen, ob es einfach weggehen würde.

Die Fehlermeldung sagt:

Zielpfad zu lang

Der Dateiname (n) wäre zu lang für die   Zielordner. Sie können den Dateinamen verkürzen und es erneut versuchen, oder versuchen Sie es mit einem   Standort, der einen kürzeren Pfad hat.

screenshot

Wie kann ich die Dateien in diesem Fall löschen?


192
2018-05-16 20:09


Ursprung


Würde es von der Kommandozeile mit dem funktionieren del Befehl? Etwas in der Art von del *.cache sollte alle Cachedateien im aktuellen Verzeichnis löschen. - Ryan
"Path \ to \ folder \ CACHEI ~ Das System konnte die angegebene Datei nicht finden", sagte das zweimal und es sind 2 Dateien drin, aber nichts getan - Chris
Bei näherer Überlegung könntest du eine der anderen Fragen überprüfen, die bereits beantwortet wurden. Dieses beispielsweise. - Ryan
Wenn diese beiden Dateien die einzigen Dateien sind, die im Verzeichnis verbleiben, können Sie möglicherweise das gesamte Verzeichnis löschen. Versuchen Sie es an der Eingabeaufforderung rd /s directoryname  Dies wird gelöscht directoryname und alle Dateien / Unterverzeichnisse darin, also benutze es mit Vorsicht :) - bitsmack
youtube.com/watch?v=qQTyTprFAOg - bhv


Antworten:


Angenommen, Sie sind auf Windows:

Was ich immer mache ist zu benutzen subst Erstellen Sie eine Laufwerkbuchstabe-Verbindung mit einem Teil des Pfades.

Gehen Sie dann zum neuen Laufwerksbuchstabe und navigieren Sie zu den Dateien, die lange Namen haben. Sie sollten nun in der Lage sein, sie / etc / umzubenennen / zu löschen. Der Grund dafür ist, dass der Pfad selbst nicht länger als 255 Zeichen enthält.

So erstellen Sie einen Subst-Ordner

  1. Starten Sie einen Befehlsprompt (keine Administratorrechte erforderlich)
  2. Benutzen cd um zu dem Ordner zu navigieren, den Sie besuchen möchten (Sie können verwenden Tab Namen automatisch vervollständigen
  3. Art subst j: . Erstellen der Laufwerkbuchsen-Zuordnung (anstelle von. können Sie auch den gesamten Pfad eingeben)
  4. Jetzt im Explorer hast du einen neuen Brief. Gehen Sie dazu und tun Sie alles, was Sie für die .cache-Dateien tun müssen.
  5. Geh zurück zu deinem cmd-Fenster und tippe subst /d j: Entfernen Sie das Laufwerk oder starten Sie Ihren PC neu.

EDIT: Ein Trick, den ich gelernt habe, der das Ganze ein wenig verkürzen kann. Klicken Sie im Explorer-Fenster, in dem Sie Probleme haben, auf die Adressleiste, damit Sie sie eingeben und dann eingeben können cmd und drücke Eingeben Um an diesem Ort eine Eingabeaufforderung zu starten, fahren Sie mit Schritt 3 fort. :)

EDIT2: Okay, dieser Trick kann noch weiter ausgebaut werden. Wenn Sie im Explorer auf dem richtigen Pfad sind, geben Sie einfach ein subst j: . in der Adressleiste und drücken Sie die Eingabetaste. Ein Befehlsfenster wird geöffnet, der Befehl ausgeführt und wieder geschlossen, und im Explorer wird ein neues Laufwerk angezeigt.


341
2018-05-16 20:20



robocopy empty_dir base_nested_dir / purge - Erstellen Sie einfach ein leeres Verzeichnis und teilen Sie robocopy mit, dass alles im Zielverzeichnis gelöscht werden soll, das sich nicht im leeren Verzeichnis befindet stackoverflow.com/a/3320317/588759 - rofrol
Probieren Sie dies aus und ich konnte die fragliche Datei nicht entfernen .. Ich benutze Cygwin mit Windows, eine andere Lösung ist, die Datei auf diese Weise zu entfernen: rm -R / Pfad / in / Frage, solange kein anderes Programm die Datei verwendet Du bist startklar - John
Ich hatte ein Problem, bei dem SUBST J: als Parameter nicht erkannte (es wurden auch keine virtuellen Laufwerke angezeigt, die verfügbar waren), so dass die von John erwähnte cygwin-Option gut funktionierte. - Tisch
@rofrol, sollten Sie Ihren robocopy - Kommentar eine Antwort geben: es ist viel einfacher als die Verzeichnisnamen - Ansatz zu tun, wenn Sie mit vielen untergeordneten Verzeichnissen (wie denen, die in node_modules) - Andy Brown
Johns Lösung funktionierte sehr gut für mich, fügte nur den Parameter -for (force) hinzu: rm -R -f / pathToDelete - Christophe Keller


Ihre Frage fragt, wie Sie eine Datei löschen können, wenn der Dateiname zu lang ist. Wenn der Pfad zu lang ist und nicht nur der Dateiname selbst, können Sie die Ordner einfach umbenennen, um den Pfad kürzer zu machen.

Aber um eine Datei zu löschen, deren Name mehr als 255 Zeichen enthält:

  • Öffnen Sie eine Eingabeaufforderung, indem Sie "CMD.EXE" ausführen
  • Navigieren Sie zu dem Ordner, der die Datei enthält
  • Verwenden Sie den Befehl DIR / X, der die Kurznamen der Dateien anzeigt.
  • Löschen Sie mit dem Kurznamen.

Wenn die Datei den Namen "verylongfilename.fil" hat, wird der Kurzname als "verallo ~ 1.fil" angezeigt und Sie können diesen Namen löschen.

Bitte beachten Sie, dass obwohl Windows selbst Pfade mit mehr als 255 Zeichen verarbeiten kann, die meisten GUI - wie der Windows Explorer - an das kürzere Limit gebunden sind.


64
2018-05-17 06:31



Dies ist eine bessere Antwort als angenommen. - Ben
Die gewählte Antwort ist besser, weil Sie ganze Ordner mit dieser Methode löschen können - mcont
aber in Windows 7 scheint, dass DIR / x hier überhaupt keine Anzeige ändert ... :( - gumuruh
Einige NTFS-Dateisysteme haben KEINE 8.3-Äquivalente. Das funktioniert nicht immer mehr. - Ross Presser
Del / S von CMD hat bei mir auch mit großem Namen am 8. gearbeitet. - Jeff


Gegoogelt: Lösche langen Dateinamen Erstes Ergebnis

Verwenden Sie Unlocker http://www.filehippo.com/download_unlocker/

Ordner kann nicht gelöscht werden: Er wird von einer anderen Person oder einem anderen Programm verwendet   Datei kann nicht gelöscht werden: Zugriff verweigert Es wurde geteilt   Verstoß. Die Quell- oder Zieldatei wird möglicherweise verwendet. Die Datei ist   Wird von einem anderen Programm oder Benutzer verwendet. Stellen Sie sicher, dass die Festplatte nicht voll ist oder   schreibgeschützt und die Datei wird derzeit nicht verwendet.

Unlocker kann helfen! Klicken Sie einfach mit der rechten Maustaste auf den Ordner oder die Datei und wählen Sie   Unlocker. Wenn der Ordner oder die Datei gesperrt ist, wird eine Liste der Schließfächer angezeigt   wird auftauchen. Klicken Sie einfach auf Alle freischalten und Sie sind fertig!


4
2018-05-16 20:18



Ich habe das gesehen, aber ich wusste nicht, ob Blocker sicher zu benutzen war, also ignorierte ich es, ich werde es ausprobieren. EDIT: hat nicht funktioniert. Es funktioniert bei anderen Dateien, aber die Unblocker-Funktion wird nicht im Dropdown-Menü angezeigt - Chris
Sicher der einfachste Weg, es zu tun, obwohl es einen Neustart benötigt, um abzuschließen. Nichts ist falsch mit Unlocker überhaupt - seit Jahren und es ist ein sehr nützliches Dienstprogramm. Im Fall einer Datei oder eines Ordners, deren Pfad zu lang ist, wird kein Sperr-Handle gefunden, aber die Option "Löschen" sollte im Drop-Down-Menü angeboten werden. - Steve Pettifer
Arbeitete einwandfrei - lustige Sache ist, dass ich diese Software installiert habe, aber mir nicht eingefallen ist, sie in dieser Situation zu benutzen. - Daniel Sokolowski
Ich habe nicht für einen anderen Ordner gearbeitet, in den ich einen kreisförmigen Ordner kopiert habe, aber es funktionierte, jeden Level-Ordner in ein Zeichen umzubenennen 1 den ganzen Weg und dann löschen. - Daniel Sokolowski
Dies war die einzige Antwort, die für mich funktionierte (ich benutze Windows 10). Vielen Dank! - user26832


Microsoft hat eine nützlicher Wissensdatenbankartikel zum Löschen nicht löschbarer Dateien. Ursache # 4 ist für Sie relevant.

Am besten wäre es, wenn Sie dem Ordner, in dem sich die Datei befindet (Auflösung # 3), ein Laufwerk zuordnen und dann über dieses Laufwerk einsteigen und es löschen.


2
2018-05-16 20:18



Ich habe vorher nie realisiert, dass ich "Netzwerklaufwerk" an einen Ort auf meiner eigenen Festplatte "abbilden" könnte. Das habe ich im Windows Explorer gemacht. Nachdem ich zum Laufwerk navigiert war, konnte ich den Ordner und den Inhalt löschen. Das gleiche Prinzip wie die oben gezeigten Konsolenlösungen, aber dies ist eine schnelle GUI-Lösung, die für mich einfacher war. - RandomHandle