Verwenden Sie dito, um Dateien & Verzeichnisse intelligent vom Mac-Terminal zu kopieren

Inhaltsverzeichnis:

Anonim

Die meisten langjährigen Benutzer der Befehlszeile verlassen sich auf den Befehl cp, um Dateien und Verzeichnisse zu kopieren, aber Mac OS X bietet mit dem Befehl „ditto“ eine andere Lösung. Ditto ist etwas fortgeschrittener, kann aber aus mehreren Gründen für „cp“ von Vorteil sein, da es nicht nur Eigentumsattribute und Berechtigungen, sondern auch Dateiressourcenzweige sowie Datei- und Ordnermetadaten beibehält und im Wesentlichen sicherstellt, dass die Datei und/oder Ordner genau kopiert werden .

Außerdem kann ditto verwendet werden, um eine Datei oder einen Ordner in ein Quellverzeichnis zu kopieren, aber wenn diese Quelle noch nicht existiert, erstellt ditto sie automatisch. Auch wenn der Zielordner existiert, werden die kopierten Inh alte in diesem Zielverzeichnis zusammengeführt. Schließlich folgt ditto auch symbolischen Links, was es besonders praktisch macht, wenn Sie den Befehl ln häufig verwenden.

Um den ditto-Befehl besser zu verstehen, lassen Sie uns einige Beispiele mit echter Syntax durchgehen.

Verwendung von Ditto zum Kopieren von Dateien/Ordnern

In seiner einfachsten Form funktioniert ditto ähnlich wie der cp-Befehl, mit folgender grundlegender Syntax:

dito Quelle Ziel

Wenn Sie beispielsweise ~/Desktop/FluffyBackups nach /Volumes/FluffyBackups/ kopieren möchten, geben Sie einfach Folgendes ein:

dito ~/Desktop/FluffyBackups /Volumes/FluffyBackups/

Auch hier bleiben alle Eigentums- und Ressourcen-Metadatendetails der kopierten Dateien erh alten, was besonders wichtig sein kann, wenn Sie Dateien von einem Benutzerverzeichnis in ein anderes kopieren oder wenn Sie so etwas bewahren möchten Änderungszeiten von Dateien.

Wenn Sie sich bezüglich des Quell- und Zielinh alts nicht sicher sind, können Sie die beiden immer mit dem Befehl comm oder dem Befehl diff vergleichen, bevor Sie mit dem Befehl ditto fortfahren.

Verwenden von Ditto zum Zusammenführen von Verzeichnissen und Ordnerinh alten

Denken Sie daran, dass ditto überprüft, ob das Ziel bereits existiert, und wenn ja, werden die Verzeichnisse der Quelle mit dem Ziel zusammengeführt. Dies ist wichtig und äußerst nützlich, was es zu einer der einfachsten Möglichkeiten macht, die Verzeichnisse über die Befehlszeile in Mac OS X zusammenzuführen (obwohl es jetzt auch im Finder einfach ist).

dito ~/Pictures/Fall2015/ /Volumes/PhotoBackup/2015/

Dies würde alle Bilder von „Fall2015“ nehmen und sie in das bereits vorhandene Verzeichnis „2015“ kopieren, wodurch die Inh alte effektiv von der Quelle zum Ziel zusammengeführt würden. Auch hier tritt das Zusammenführungsverh alten auf, wenn das Ziel bereits vorhanden ist. Wenn das Ziel nicht vorhanden ist, wird es wie angegeben oder als Quellname erstellt.

Wenn Sie ditto verwenden, um Daten aus Verzeichnissen mit symbolischen Links zu kopieren, ist die Verwendung des Flags -V (verbose all) hilfreich, da es alle kopierten Dateien und symbolischen Links anzeigt. Hinweis -V unterscheidet sich von -v, das nur Dateien als Ausgabe anzeigt und keine symbolischen Links.

Kopieren ohne Metadaten mit Ditto

Wenn Sie aus irgendeinem Grund keine Metadaten und Ressourcenzweige kopieren möchten, können Sie das Flag –norsrc wie folgt verwenden:

dito -V --norsrc ~/Sample/Folder /Volumes/NoMetadataBackups

Die Verwendung des Flags –norsrc macht einen Hauptvorteil von ditto zunichte, kann aber in manchen Fällen nützlich sein.

Sie können viel mehr über den ausgezeichneten ditto-Befehl erfahren, indem Sie seine Handbuchseite lesen, auf die Sie in Mac OS X zugreifen können, indem Sie Folgendes eingeben:

man dito

Verwenden Sie wie gewohnt die Pfeiltasten, um in der Handbuchseite nach oben und unten zu navigieren.

Bevor Sie sich stark auf ditto verlassen, sollten Sie es ein paar Mal mit belanglosen Dateiverschiebungen und Verzeichniszusammenführungen ausprobieren, um zu verstehen, wie es bei Ihrer geplanten Verwendung funktioniert.

Verwenden Sie dito, um Dateien & Verzeichnisse intelligent vom Mac-Terminal zu kopieren