GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So kopieren Sie Dateien und Verzeichnisse unter Linux

Das Kopieren von Dateien und Verzeichnissen ist eine der häufigsten Aufgaben, die Sie bei der Arbeit an der Befehlszeile ausführen. Es gibt mehrere Befehle zum Kopieren von Dateien unter Linux mit cp und rsync sind die am weitesten verbreiteten Tools.

Es ist üblich, den cp zu verwenden Befehl zum Kopieren von Dateien und rsync um Verzeichnisse zu kopieren.

Um Dateien und Verzeichnisse kopieren zu können, müssen Sie mindestens Leserechte auf die Quelldatei und Schreibrechte auf das Zielverzeichnis haben.

Kopieren von Dateien mit dem cp Befehl #

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

Der einfachste Anwendungsfall ist das Kopieren einer Datei in das aktuelle Arbeitsverzeichnis. Zum Beispiel, um eine Datei mit dem Namen file.txt zu kopieren in eine Datei namens file_backup.txt im aktuellen Verzeichnis würden Sie den folgenden Befehl ausführen:

cp file.txt file_backup.txt

Wenn die Zieldatei vorhanden ist, wird sie überschrieben. Um vor dem Überschreiben der Dateien eine Sicherheitsabfrage zu erhalten, verwenden Sie das -i Option.

cp -i file.txt file_backup.txt

Standardmäßig bei Verwendung des cp Befehl zum Kopieren einer Datei, gehört die neue Datei dem Benutzer, der den Befehl ausführt. Verwenden Sie das -p Option zum Beibehalten des Dateimodus, des Eigentums und der Zeitstempel:

cp -p file.txt file_backup.txt

Eine weitere nützliche Option ist -v . Wenn Sie diese Option verwenden, gibt der Befehl aus, was gerade getan wird:

cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'

Kopiert eine Datei in ein Verzeichnis #

Um eine Datei in ein Verzeichnis zu kopieren, geben Sie 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 nach /backup Verzeichnis:

cp file.txt /backup

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

Wenn Sie die Datei unter einem anderen Namen kopieren möchten, müssen Sie den gewünschten Dateinamen angeben:

cp file.txt /backup/new_file.txt

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

Mehrere Dateien kopieren #

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

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

Beim Kopieren mehrerer Dateien muss das Ziel ein Verzeichnis sein.

Der cp Mit dem Befehl können Sie auch den Musterabgleich verwenden. Zum Beispiel, um alle .png zu kopieren Dateien aus dem aktuellen Verzeichnis in das Verzeichnis /backup Verzeichnis würden Sie verwenden:

cp *.png /backup

Kopieren von Verzeichnissen mit cp Befehl #

Um ein Verzeichnis einschließlich aller seiner Dateien und Unterverzeichnisse zu kopieren, verwenden Sie das -R oder -r Möglichkeit. Im folgenden Beispiel kopieren wir das Verzeichnis Pictures zu 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 existiert, wird das Quellverzeichnis selbst und sein Inhalt in das Zielverzeichnis kopiert. Um nur die Dateien und Unterverzeichnisse, aber nicht das Zielverzeichnis zu kopieren, verwenden Sie das -T Möglichkeit:

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 das -R verwenden müssen Option.

Kopieren von Dateien und Verzeichnissen mit dem rsync Befehl #

rsync ist ein schnelles und vielseitiges Befehlszeilenprogramm, das Dateien und Verzeichnisse zwischen zwei Standorten synchronisiert. Es kann verwendet werden, um Dateien an lokale und entfernte Speicherorte zu kopieren.

rsync enthält viele Optionen, die jeden Aspekt seines Verhaltens steuern

Die nützlichste Option ist -a die Verzeichnisse rekursiv kopieren, spezielle und blockierende Geräte übertragen und symbolische Links, Änderungszeiten, Gruppen, Eigentumsrechte und Berechtigungen beibehalten.

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

rsync -a file.txt file_backup.txt

Wenn die Zieldatei existiert, rsync wird es überschreiben.

Derselbe Befehl kann zum Kopieren eines Verzeichnisses verwendet werden:

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

rsync bedroht die Quellverzeichnisse, die mit einem abschließenden Schrägstrich / enden anders. 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, rsync kopiert das Quellverzeichnis in das Zielverzeichnis. Am sichersten ist immer der abschließende Schrägstrich / sowohl auf dem Ziel als auch auf der Quelle.

Um mehr über rsync zu erfahren Überprüfen Sie die folgenden Artikel:

  • So verwenden Sie Rsync für die lokale und entfernte Datenübertragung und -synchronisierung
  • So schließen Sie Dateien und Verzeichnisse mit Rsync aus

Schlussfolgerung #

Wir haben Ihnen gezeigt, wie Sie Dateien und Verzeichnisse in Linux- und Unix-basierten Systemen mit dem cp kopieren und rsync Dienstprogramme.

Wenn Sie Fragen haben, hinterlassen Sie bitte unten einen Kommentar.


Linux
  1. Eine einfache Möglichkeit, Dateien und Verzeichnisse in Linux zu verstecken

  2. So finden Sie eine Datei in Linux rekursiv in allen Verzeichnissen

  3. So extrahieren Sie .gz- und .tar.gz-Dateien unter Linux

  4. Wie listet man rekursive Dateigrößen von Dateien und Verzeichnissen in einem Verzeichnis auf?

  5. So kopieren / verschieben Sie Dateien und Verzeichnisse unter Linux mit den Befehlen „cp“ und „mv“.

Wie man Textdateien unter Linux vergleicht und zusammenführt

So können Sie versteckte Dateien und Verzeichnisse unter Linux anzeigen und erstellen

So benennen Sie Dateien und Verzeichnisse in Linux um

So entfernen Sie Dateien und Verzeichnisse auf einem Linux-Terminal

So kopieren Sie Dateien und Verzeichnisse im Linux-Terminal

So kopieren Sie das Verzeichnis unter Linux