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

So kopieren Sie Dateien unter Linux mit dem CP-Befehl

In diesem Beitrag geht es um den Linux-Befehl cp.

Das Kopieren von Dateien ist eine der häufigsten Aufgaben beim Umgang mit Dateien auf jedem Betriebssystem. Es ist sogar sehr üblich, die Desktop-Verknüpfung STRG + c zum Kopieren und STRG + v zum Einfügen zu verwenden. Im Linux-Terminal ist dies jedoch auch eine ziemlich einfache Aufgabe, und dafür verwenden wir den cp-Befehl.

Linux cp-Befehl

Der Befehl cp kopiert einfach eine oder mehrere Dateien oder Ordner von einem Ort an einen anderen. Wie bei jedem Linux-Befehl kann jedoch sein anfängliches Verhalten dank der Verwendung von Optionen geändert werden.

In ähnlicher Weise ist der Befehl cp in allen Linux-Distributionen installiert und bereit, da er Teil der GNU-Dienstprogramme ist. Öffnen Sie also einfach einen Terminalemulator und beginnen Sie mit der Arbeit.

Cp-Befehl:grundlegende Syntax und Optionen

Der cp-Befehl ist recht einfach zu verwenden, da seine Funktion ebenfalls einfach ist. Wie alle Befehle der UNIX-Familie hat es eine grundlegende Syntax zur Verwendung.

Im Fall des cp-Befehls lautet die grundlegende Syntax wie folgt:

cp [option]... source... directory

Wobei sich Quelle auf die Datei oder den Ordner bezieht, die/der in ein Ziel namens Verzeichnis kopiert wird.

Die Optionen und einige grundlegende Informationen über den Befehl können mit dem folgenden Befehl angezeigt werden:

:~$ cp --help

Dort werden Sie sehen, dass es verschiedene Möglichkeiten gibt. Die wichtigsten sind die folgenden:

Option Beschreibung gemäß GNU utils
-a Behalten Sie so viel wie möglich von der Struktur und den Attributen der Originaldateien in der Kopie bei
-d Symbolische Links als symbolische Links kopieren, anstatt die Dateien zu kopieren, auf die sie verweisen, und harte Links zwischen Quelldateien in den Kopien beibehalten.
-f oder –force Diese Option erzwingt das Kopieren auch dann, wenn der Zielordner nicht zum Schreiben verfügbar ist.
-i oder –interactive Zeigt jedes Mal eine Meldung an, wenn eine Datei überschrieben werden soll.
-l Erstellen Sie feste Links anstelle von Kopien von Nicht-Verzeichnissen.
-R oder -r oder –rekursiv Verzeichnisse rekursiv kopieren. Folgen Sie standardmäßig keinen symbolischen Links in der Quelle.
-s oder –symbolischer Link In diesem Fall erstellt der Befehl symbolische Links von allen Dateien, die keine Ordner sind. Dies ersetzt eine Kopie.
-u oder –update Diese Option kopiert keine Dateien, die denselben oder einen neueren Änderungszeitstempel im Zielordner haben. Es ist ein Update einer Kopie.
-v oder –verbose Drucken Sie den Namen jeder Datei, bevor Sie sie kopieren.

Anhand einiger Beispiele demonstrieren wir nun die übliche Verwendung des cp-Befehls auf einem Linux-System.

Mit dem cp-Befehl

Eine oder mehrere Dateien in einen Ordner kopieren

Beginnen wir mit den Grundlagen. Um eine Datei in einen bestimmten Ordner zu kopieren, muss der folgende Befehl ausgeführt werden:

:~$ cp [file] [destination]

Zum Beispiel:

:~$ cp file.txt /home/user/Documents/

Der obige Befehl kopiert eine Datei namens file.txt, die sich an der gleichen Stelle wie die Eingabeaufforderung im Ordner Dokumente befindet.

Sie können auch eine Datei kopieren, die sich an einem anderen Ort als der Eingabeaufforderung befindet, indem Sie einen absoluten Pfad verwenden.

:~$ cp /home/user/Pictures/image.jpg /home/user/Documents

Wenn Sie also mehrere Dateien auf einmal kopieren möchten, trennen Sie diese einfach durch ein Leerzeichen.

:~$ cp file1.txt file2.txt /home/user/Downloads

Sie können es immer noch mit den absoluten Routen machen.

:~$ cp /home/user/file1.txt /home/user/Pictures/file2.jpg /home/user/Downloads

So schnell können Sie mehrere Dateien kopieren.

Alle Dateien in einem Verzeichnis in einen Ordner kopieren

Es ist auch möglich, alle Dateien von einem Ordner in einen anderen zu kopieren. Verwenden Sie dazu den Operator Sternchen (*). Zum Beispiel:

:~$ cp * [destination]

Oder

:~$ cp * /home/users/Documents/folder/

Wenn Sie jedoch alle Dateien mit derselben Erweiterung kopieren möchten, können Sie dies folgendermaßen tun:

:~$ cp *.txt /home/users/Documents/folder/

Das heißt, alle .txt-Dateien werden in den Ordner kopiert.

Kopieren von Verzeichnissen mit dem cp-Befehl

Bisher haben wir Ihnen beigebracht, wie man Dateien kopiert, aber was ist, wenn Sie einen Ordner kopieren möchten? Nun, es verursacht einen Fehler.

Angenommen, Sie möchten einen Ordner mit dem Namen „example“ nach /home/angelo/Documents kopieren, würde dies zu einem Verzeichnisfehler führen, der cp auslässt
ähnlich wie dieser:

Um Ordner mit dem Befehl cp zu kopieren, fügen Sie die Option -r hinzu. Zum Beispiel:

:~$ cp -r example/ /home/angelo/Documents/

Dadurch wird der gesamte Ordner in den Zielordner kopiert.

Sichern Sie die zu kopierenden Dateien

Dies ist eine sehr nützliche Option. Beim Kopieren von Dateien ist es üblich, dass Sie sie im Laufe der Zeit ändern, aber Sie können immer eine Kopie des Originals behalten.

Um das Backup zu erstellen, verwenden Sie einfach den folgenden Befehl:

:~$ cp -ab [file] [destination]

Natürlich können Sie die gewünschte Datei und den gewünschten Ordner angeben. Zum Beispiel:

:~$ cp -ab file2.txt /home/angelo/Documents/example/

In diesem Fall verwenden wir zwei Optionen gleichzeitig. Das erste ist -a. es behandelt die Datei explizit als das, was sie ist, eine Datei. Und die zweite, die -b ist, führt die Sicherung durch.

Der Befehl erstellt ein Backup und fügt am Ende ein ~ hinzu, wenn wir die Kopie ein zweites Mal erstellen. Dies ist die Originaldatei der Kopie.

:~$ ll /home/angelo/Documents/example

Bestätigung anfordern, bevor eine Datei überschrieben wird

Um mögliche Fehler beim Schreiben der Datei zu vermeiden, können Sie die Option -i verwenden.

Bei dieser Option werden Sie zur Bestätigung aufgefordert, bevor Dateien für eine Kopie überschrieben werden. Fügen Sie dazu einfach die Option -i zum Befehl hinzu:

:~$ cp -i file2.txt /home/angelo/Documents/example/

Denken Sie daran, dass die Warnung nur beim Überschreiben angezeigt wird. Wenn Sie viele Dateien kopieren, aber keine am Zielort gleich heißt, wird nichts angezeigt.

Vermeiden Sie das Überschreiben von Dateien mit dem cp-Befehl

Der cp-Befehl hat eine Option, die verhindert, dass die Dateien im Zielordner während des Kopierens überschrieben werden.

Fügen Sie dazu einfach die Option -n zum cp-Befehl hinzu:

:~$ cp -n file.txt [destination]

Diese Option ist nützlich, wenn Sie bereits wissen, dass es gleichnamige Dateien gibt und Sie diese nicht überschreiben möchten. Andererseits ist es auch nützlich, wenn Sie keine Ahnung haben, ob ähnliche Dateien existieren.

Erstelle Kopien unter Beibehaltung der Dateiattribute

Auf Unix-basierten Systemen haben Dateien bestimmte Attribute. Wenn also ein anderer Benutzer als der, der es erstellt hat, es kopiert oder verschiebt, besteht die Gefahr, dass die Werte dieser Attribute geändert werden. Einige davon sind Änderungsdatum und Dateiberechtigungen.

Um dies zu vermeiden, fügen Sie dem cp-Befehl die Option -p hinzu.

:~$ cp -p [file] [destination]

So einfach ist es, die Attribute beim Kopieren zu erhalten.

Aktualisieren eines Backups mit dem cp-Befehl

Es ist möglich, den Befehl cp zu verwenden, um unsere Dateien an einem anderen Ort wie einem externen Speicher zu sichern. Angenommen, Sie möchten einen Ordner mit Musik an einem anderen Ort sichern. Dazu verwenden Sie den folgenden Befehl:

:~$ cp -r [music_folder] [destination]

Aber wie sich herausstellt, fügen Sie diesem Ordner neue Dateien hinzu und möchten diese erneut sichern. Sie können verhindern, dass der cp-Befehl die bereits gesicherten Dateien zurückkopiert, und nur diejenigen kopieren, die sich nicht im Zielordner befinden.

Klingt gut, oder? Dazu verwenden wir die Option -u oder –update.

:~$ cp -ru [music_folder] [destination]

Kurz gesagt, der Befehl kopiert den Ordner und überprüft, welche Dateien aus dem Quellordner sich im Ziel befinden. Und schließlich werden nur diejenigen kopiert, die es nicht sind.

Um den gesamten Vorgang anzuzeigen, können Sie auch die Option -v hinzufügen.

:~$ cp -ruv [music_folder] [destination]

So können Sie ein Backup mit einem einfachen Befehl aktualisieren.

Abschließende Gedanken

Der cp-Befehl ist ein einfach zu verwendender Befehl, aber Sie haben gesehen, dass Sie damit viele interessante Dinge tun können. Es ist Teil von GNU utils, wodurch es für alle Linux-Distributionen verfügbar ist.

Andererseits haben Sie in diesem Beitrag einen Teil dessen gelernt, was mit dem Befehl gemacht werden kann. Dies ist sehr nützlich in Serverumgebungen, aber auch um immer tiefer in die Bedienung des Betriebssystems einzusteigen.


Ubuntu
  1. So benennen Sie Dateien unter Linux um

  2. Kopieren Sie Dateien und Verzeichnisse unter Linux

  3. So starten Sie Linux über die Befehlszeile neu

  4. Wie verwende ich den Rsync-Befehl unter Linux?

  5. So erstellen Sie Sparse-Dateien in Linux mit dem Befehl „dd“.

Rm-Befehl unter Linux

So benennen Sie Dateien über die Befehlszeile in Linux um

So erstellen Sie eine Datei unter Linux mit dem Cat-Befehl

So erstellen Sie eine Datei in Linux mit Terminal

So kopieren Sie eine große Anzahl von Dateien unter Linux

So zählen Sie Dateien im Verzeichnis unter Linux