Android

So kopieren Sie Dateien und Verzeichnisse unter Linux

Datei-Rechte in Linux ändern und verwalten [Terminal]

Datei-Rechte in Linux ändern und verwalten [Terminal]

Inhaltsverzeichnis:

Anonim

Das Kopieren von Dateien und Verzeichnissen ist eine der häufigsten Aufgaben, die Sie bei der Arbeit an der Befehlszeile ausführen. Unter Linux gibt es mehrere Befehle zum Kopieren von Dateien, wobei cp und rsync die am häufigsten verwendeten Tools sind.

Es ist üblich, beim Kopieren von Dateien den Befehl cp und beim Kopieren von Verzeichnissen den Befehl rsync .

Um Dateien und Verzeichnisse kopieren zu können, müssen Sie mindestens Leseberechtigungen für die Quelldatei und Schreibberechtigungen für das Zielverzeichnis besitzen.

Kopieren von Dateien mit dem Befehl cp

Unter Linux- und Unix-Betriebssystemen wird der Befehl cp zum Kopieren von Dateien und Verzeichnissen verwendet.

Der einfachste Anwendungsfall ist das Kopieren einer Datei in das aktuelle Arbeitsverzeichnis. Um beispielsweise eine Datei mit dem Namen file.txt in die Datei file_backup.txt im aktuellen Verzeichnis zu kopieren, führen Sie den folgenden Befehl aus:

cp file.txt file_backup.txt

Wenn die Zieldatei existiert, wird sie überschrieben. Verwenden Sie die Option -i , um vor dem Überschreiben der Dateien eine -i .

cp -i file.txt file_backup.txt

Wenn Sie den Befehl cp zum Kopieren einer Datei verwenden, gehört die neue Datei standardmäßig dem Benutzer, der den Befehl ausführt. Verwenden Sie die Option -p , um den Dateimodus, den Besitz und die Zeitstempel beizubehalten:

cp -p file.txt file_backup.txt

Eine weitere nützliche Option ist -v . Bei Verwendung dieser Option gibt der Befehl aus, was gerade ausgeführt wird:

cp -v file.txt file_backup.txt

'file.txt' -> 'file_backup.txt'

Kopieren Sie eine Datei in ein Verzeichnis

Geben Sie zum Kopieren einer Datei in ein Verzeichnis den absoluten oder den relativen Pfad zum Verzeichnis an. Wenn das Zielverzeichnis weggelassen wird, wird die Datei in das aktuelle Verzeichnis kopiert.

Im folgenden Beispiel kopieren wir die Datei file.txt in das Verzeichnis /backup :

cp file.txt /backup

Wenn Sie nur den Verzeichnisnamen als Ziel angeben, hat die kopierte Datei denselben Namen wie die Originaldatei.

cp file.txt /backup/new_file.txt

Der obige Befehl kopiert die Datei in das angegebene Verzeichnis als new_file.txt .

Kopieren Sie mehrere Dateien

Um mehrere Dateien und Verzeichnisse gleichzeitig zu kopieren, geben Sie die Namen der Quelldateien und Verzeichnisse an, gefolgt vom Zielverzeichnis als letztem Argument:

cp file.txt dir file1.txt file2.txt dir1

Beim Kopieren mehrerer Dateien muss das Ziel ein Verzeichnis sein.

Mit dem Befehl cp können Sie auch den Mustervergleich verwenden. Um beispielsweise alle .png Dateien aus dem aktuellen Verzeichnis in das Verzeichnis /backup zu kopieren, verwenden Sie Folgendes:

cp *.png /backup

Verzeichnisse mit dem Befehl cp kopieren

Verwenden Sie die Option -R oder -r , um ein Verzeichnis einschließlich aller zugehörigen Dateien und Unterverzeichnisse zu kopieren. Im folgenden Beispiel kopieren wir das Verzeichnis Pictures nach Pictures_backup :

cp -R Pictures Pictures_backup

Der obige Befehl erstellt das Zielverzeichnis und kopiert rekursiv alle Dateien und Unterverzeichnisse von der Quelle in das Zielverzeichnis.

Wenn das Zielverzeichnis bereits vorhanden ist, werden das Quellverzeichnis und der gesamte Inhalt in das Zielverzeichnis kopiert. Verwenden Sie die Option -T nur die Dateien und Unterverzeichnisse, aber nicht die Zielverzeichnisse zu kopieren:

cp -RT Pictures Pictures_backup

Die beim Kopieren von Dateien verwendeten Optionen können auch beim Kopieren von Verzeichnissen verwendet werden. Der Hauptunterschied besteht darin, dass Sie beim Kopieren von Verzeichnissen die Option -R .

Kopieren von Dateien und Verzeichnissen mit dem Befehl rsync

rsync ist ein schnelles und vielseitiges Befehlszeilenprogramm, das Dateien und Verzeichnisse zwischen zwei Speicherorten synchronisiert. Es kann zum Kopieren von Dateien an lokale und entfernte Speicherorte verwendet werden.

rsync enthält eine Reihe von Optionen, die jeden Aspekt seines Verhaltens steuern. Die nützlichste Option ist -a der Verzeichnisse rekursiv kopiert, Spezial- und Blockgeräte übertragen, symbolische Links, Änderungszeiten, Gruppen-, Besitz- und Berechtigungen beibehalten werden.

Um eine einzelne Datei von einem Ort an einen anderen zu kopieren, führen Sie den folgenden Befehl aus:

rsync -a file.txt file_backup.txt

Wenn die Zieldatei vorhanden ist, wird sie von rsync überschrieben.

Mit demselben Befehl können Sie ein Verzeichnis kopieren:

rsync -a /var/www/public_html/ /var/www/public_html_backup/

rsync bedroht die Quellverzeichnisse, die mit einem abschließenden Schrägstrich enden. Wenn Sie dem Quellverzeichnis einen abschließenden Schrägstrich hinzufügen, kopiert der Befehl nur den Inhalt des Quellverzeichnisses in das Zielverzeichnis. Wenn der abschließende Schrägstrich weggelassen wird, kopiert rsync das Quellverzeichnis in das Zielverzeichnis. Die sicherste Option ist, immer den abschließenden Schrägstrich / sowohl am Ziel als auch an der Quelle einzufügen.

Weitere rsync zu rsync Sie in den folgenden Artikeln:

Fazit

In diesem Handbuch haben wir Ihnen gezeigt, wie Sie Dateien und Verzeichnisse in Linux- und Unix-basierten Systemen mithilfe der Dienstprogramme cp und rsync kopieren.

cp rsync terminal