Wie kann ich den Inhalt eines Ordners mit Hilfe eines Terminals in einen anderen Ordner in einem anderen Verzeichnis kopieren?

Ich versuche, den Inhalt eines Ordners mit dem Terminal in einen anderen Ordner in einem anderen Verzeichnis zu kopieren.

Könnte mir jemand ein Beispiel für die dafür erforderliche Befehlszeilensyntax geben?

Sie können den Inhalt eines Ordners /source in einen anderen bestehenden Ordner /dest mit dem Befehl

cp -a /source/. /dest/

Die Option -a ist eine verbesserte rekursive Option, die alle Dateiattribute und auch Symlinks beibehält.

Das . am Ende des Quellpfades ist eine spezielle cp-Syntax, die es erlaubt, alle Dateien und Ordner zu kopieren, auch versteckte.

Kommentare (16)

Eine Alternative dazu ist rsync

rsync -r source/ destination

Die Vorteile von rsync sind:

  1. Nach der ersten Synchronisierung werden nur die Dateien kopiert, die sich geändert haben.

  2. Sie können es über ein Netzwerk verwenden, was für Dateien in $HOME, insbesondere Konfigurationsdateien, praktisch ist.

Kommentare (10)

Nehmen wir an, Sie haben einen Ordner mit dem Namen Ordner1 in Ihrem ~, in Ordner1 befindet sich eine Datei mit dem Namen Datei1 und 2 Ordner mit den Namen sub1 und sub2, in denen sich jeweils andere Dateien und Ordner befinden.

Um den gesamten Inhalt von ~/folder1 nach ~/new_folder1 zu kopieren, würden Sie folgendes benutzen

cp -r ~/folder1/. ~/new_folder1

neuer_Ordner1 würde dann alle Dateien und Ordner von Ordner1 enthalten.

cp" ist der Befehl zum Kopieren mit einem Terminal, "r" macht es rekursiv (also aktuelles Verzeichnis + weitere Verzeichnisse innerhalb von aktuell), "~/folder1" ist der Ursprungsordner, "~/new_folder1" ist der Zielordner für die Dateien/Ordner innerhalb des Ursprungs.

Kommentare (7)