Ich habe ein Python-Skript geschrieben, um die Wiederherstellung durchzuführen.
Ich benutze die Tatsache, dass die alphabetische Reihenfolge der inkrementellen Backup-Verzeichnisse an Seagate chronologisch ist. Das Skript durchläuft die Verzeichnisse von früh bis spät und überschreibt Dateien im Zielverzeichnis. Die letzte Version einer Datei sollte daher die letzte Datei sein.
Ich musste das gesamte Backup in ein sehr kurzes Unterverzeichnis der ersten Ebene auf Seagate verschieben, da einige der Pfade mehr als 255 Zeichen umfassten. Ich musste auch ein paar Dateien mit ungewöhnlichem Unicode umbenennen.
Aber ... hier ist was ich verwendet habe. Ich habe diese Antwort von SO hier als Teil der Lösung verwendet.
#!/usr/bin/python import os import shutil def recursive_overwrite(src, dest, ignore=None): if os.path.isdir(src): if not os.path.isdir(dest): os.makedirs(dest) files = os.listdir(src) if ignore is not None: ignored = ignore(src, files) else: ignored = set() for f in files: if f not in ignored: recursive_overwrite(os.path.join(src, f), os.path.join(dest, f), ignore) else: shutil.copyfile(src, dest) os.chdir('E:\\B') dest = 'C:\\Users\\Me\\R4' paths = os.walk('.').next()[1] for path in paths: print path recursive_overwrite(path, dest)