Wie kann ich zwei ähnliche, aber nicht identische Ordner zusammenführen?

Ich habe einen Ordner (der mit vielen Unterordnern und Dateien gefüllt ist) auf einem FireWire-Laufwerk [Quelle], den ich auf ein USB-Laufwerk [Ziel] verschieben möchte.

Ich versuche, alle Dateien von der Quelle zum Ziel zu verschieben.

Ich habe damit begonnen, dies über den Finder zu tun, aber es gab mir einen Berechtigungsfehler etwa 1/8 des Weges durch den Prozess und stoppte dann.

Beim Verschieben von Dateien zwischen Laufwerken glaube ich, dass der Finder zuerst eine „Kopie“ durchführt und dann die „Quelle“ nur dann entfernt, wenn der Kopierbefehl erfolgreich abgeschlossen wurde.

Das bedeutet, dass einige Dateien erfolgreich kopiert wurden , aber ich habe keine Ahnung, welche oder wie viele. Also fing ich an , Unterordner von der Quelle zum Ziel zu kopieren (kleinere Sätze) und entfernte sie aus der Quelle, wenn sie erfolgreich kopiert wurden.

Am Ende war ich nicht in der Lage, diesen Prozess in einer Sitzung abzuschließen, und ich verlor meinen "Platz".

Jetzt habe ich also zwei unvollständige Datensätze. Die Quelle hat wahrscheinlich einige Dateien/Ordner, die sich bereits auf dem Ziel befinden, aber nicht alles wurde kopiert.

Einige der Ordner wurden möglicherweise teilweise kopiert, aber nicht alle ihre Unterordner usw.

Ich versuche herauszufinden, wie ich den Rest der Quelle am besten zum Ziel verschieben und gleichzeitig die Duplizierung minimieren kann. Wir sprechen hier über viele Daten (Quelle ist 420,72 GB in 398.127 Elementen und Ziel ist 298,84 GB und 390.149 Elemente), also muss ich offensichtlich versuchen, dies irgendwie zu automatisieren . Ich bin mir nur nicht sicher, wie.

Ich habe über gcp[GNU cp] mit --update --archiveoder dittooder rsyncoder ChronoSync nachgedacht , aber ich bin mir einfach nicht sicher, was die beste Option ist und welche Einstellungen ich für das jeweils empfohlene Programm verwenden sollte (will ich --archivemit gcp? Welche Flags würde ich verwenden mit dittooder rsync?)

Diese Software ist erstaunlich: bombich.com (Carbon Copy Cloner). Löst alle Ihre Probleme.
CCC oder SuperDuper helfen mir nur, das zu duplizieren, was ich habe, richtig? Ich muss sie zuerst zusammenführen.
Es kann fusionieren. Sie müssen die Einstellungen selbst feinabstimmen. dh diese Einstellungen/erweiterten Einstellungen anpassen
Ah… das wusste ich nicht. Werde es auf jeden Fall checken.

Antworten (2)

Sie können Terminal öffnen und eines der folgenden verwenden ( rsync wäre wahrscheinlich das Richtige für Sie, wenn Sie etwas wollen, das nicht vollständig verloren geht, wenn Sie den Prozess anhalten ):

Der Standard-UNIX-Weg

cp -R -v source/. destination

Der geeky UNIX-Weg (restartable)

rsync -vaEW source/ destination

Der "einfache" OSX-Weg

ditto -V source destination

Quelle

Würde dieser 'cp'-Befehl nicht Softlinks unterbrechen? Zum Beispiel scheinen Mac-Apps manchmal Links innerhalb des .app-Wrappers zu verwenden. (Links sind für mich immer das große Unbekannte, wenn ich dies versuche.) Guter Punkt zu rsync, das ist möglicherweise der beste Plan, da (bei so vielen Daten) die Möglichkeit einer Unterbrechung erheblich ist.

Wenn Sie FileMerge aus den Developer Tools für die beiden Verzeichnisbäume verwenden, können Sie sehen, welche einzelnen Dateien kopiert wurden, da es einen Unterschied zwischen ihnen macht und die Unterschiede anzeigt.

Ansonsten rsynckönnte es etwas automatisierter sein, wie oben von cksum erwähnt.