Win10 Dateinamen zu lange fürs Kopieren

I30R6

Komplett-PC-Aufrüster(in)
Win10 Dateinamen zu lange fürs Kopieren

Hi,

Ich habe folgendes Problem bei Win10, wobei das bei Vorgängerversionen wahrscheinlich auch der Fall ist.

Ich will Dateien Kopieren und erhalte am Ende die Fehlermeldung, das bei einigen der Dateiname/Pfadname zu lang ist und die Datei daher nicht kopiert werden kann. Soweit ich weis ist der Pfadname auf 255 Zeichen beschränkt o.Ä.


Blöd ist nur das ich gerade etwa 3 TB Daten von einer NTFS formatierten Festplatte auf eine andere kopiert habe und etliche Daten jetzt beim kopieren übersprungen werden mussten.


Erste Frage:

Wieso ist der Dateiname auf einmal zu lange, wenn ich den Ordner mit allen Daten einfach nur von einem Verzeichnis C:\ nach D:\ kopiere. Dadurch ändert sich die Länge doch nicht. Wenn der Pfad zu lange ist, wieso konnte ich die Datei überhaupt auf C:\ erstellen?

Zweite Frage:

Windows gibt einem keine Möglichkeit die Daten während des Kopiervorgangs zu kürzen. Und nach dem Überspringen der Dateien bekomme ich keine Infos welche der Dateien aus dem 3TB Datenhaufen jetzt alle zu lang gewesen sind. Wie stelle ich das jetzt am effektivsten an, die zu langen Daten rauszufiltern und nach einer manuellen Umbenennung an dieselbe Stelle im neuen Verzeichnis zu kopieren?
 
AW: Win10 Dateinamen zu lange fürs Kopieren

Kopierst du die Daten in das Hauptverzeichnis von D oder in ein Unterverzeichnis ? Durch ein zusätzliches Verzeichnis wird der Pfadname logischerweise länger.
 
AW: Win10 Dateinamen zu lange fürs Kopieren

Wie gesagt, nur von Verzeichnis zu Verzeichnis, ohne weitere Verschachtelung durch Unterverzeichnisse. Wobei das neue Verzeichnis durch Truecrypt verschlüsselt wurde. Keine Ahnung ob das Relevanz besitzt, da sich dadurch an der Pfadstruktur eigentlich nichts geändert hat.

Ich habe das Problem mit den Dateinamen leider häufiger, gibt es eine Möglichkeit beide Ordner nach dem Kopieren zu scannen und mir eine Liste aller Dateien anzuzeigen die nicht kopiert wurden. Irgendwie bekomme ich vom Windows Explorer selbst überhaupt keine Infos. Ich kopiere über Stunden 3TB und währenddessen werden hunderte von Daten nicht mitkopiert, weil Sie entweder zu lang sind, nicht darauf zugegriffen werden kann, oder von einer Antivirensoftware rausgefischt wurden. Am Ende habe ich keine Ahnung was genau jetzt verloren gegangen ist. Bei sowas wichtigem erwarte ich irgendwie mehr von Windows :(
 
Zuletzt bearbeitet:
AW: Win10 Dateinamen zu lange fürs Kopieren

Code:
import os

path1 = "C:\\test"
path2 = "D:\\test"

missing = []

for root, dirs, files in os.walk(path1):
    root2 = root.replace("C:", "D:")
    for file in files:
        name = os.path.join(root2, file)
        if not os.path.isfile(name):
            missing.append(name)
output = open("missing.txt", "w")
for x in missing:
    output.write(x + "\n")
output.close()

Hier mal ein kleines Pythonskript, welches dir die fehlenden Dateien in einer missing,txt auflistet.
Einfach Python3 installieren, Skript als name.py speichern und ausführen.

Vorher natürlich path1 und path2 entsprechend deiner Pfade anpassen (dabei immer 2 anstatt einem Backslash benutzen).

Edit: Und du musst bei "root2 = root.replace("C:", "D:")" die Laufwerksbuchstaben anpassen.
 
Zuletzt bearbeitet:
AW: Win10 Dateinamen zu lange fürs Kopieren

Theoretisch könntest du TeraCopy installieren. Dies zeigt dir an, bei welcher Datei es zu Problemen kam.
 
AW: Win10 Dateinamen zu lange fürs Kopieren

Dank euch für die Vorschläge :)

Das Phyton Script ist cool, ich wünschte ich könnte auch programmieren.

TeraCopy scheint aber gerade die beste Lösung zu sein, weil das Programm die 255 Zeichen Begrenzung sogar ignorieren kann und die Daten trotzdem kopiert. Das Problem kommt dann natürlich irgendwann wieder auf wenn man die Daten zurück kopieren will und TeraCopy nicht installiert ist.
Allerdings ist das Programm bis dahingehend als Freeware im Netz verfügbar.

Ansonnten bin ich noch auf das Programm Rename-Expert gestoßen, welches viele Filter und Umbenennungsmöglichkeiten bietet. Damit können alle zu langen Pfade und Dateinamen aufgelistet und automatisch auf eine Zeichenstelle gekürzt werden. Leider geht das mit viele Dateien nur in der kostenpflichtigen Version :(
 
Zurück