Kopieren von Dateien und Verzeichnissen mit Linux-Terminal
-
Dateien mit dem
cp
-Befehl kopieren -
Dateien mit dem
cp
-Befehl in ein Verzeichnis kopieren - Mehrere Dateien kopieren
-
Verzeichnisse mit dem
cp
-Befehl kopieren -
Dateien und Verzeichnisse mit dem
rsync
-Befehl kopieren
Wir können Dateien und Verzeichnisse mit den Befehlen cp
und rsync
unter Verwendung des Linux-Terminals kopieren. Der Befehl cp
wird im allgemeinen verwendet, um Dateien zu kopieren, während der Befehl rsync
im allgemeinen verwendet wird, um Verzeichnisse zu kopieren.
Dateien mit dem cp
-Befehl kopieren
Wir benutzen den Befehl cp
in Linux- und Unix-Betriebssystemen zum Kopieren von Dateien und Verzeichnissen.
Um den Inhalt der Datei abc.txt
in eine andere Datei backup.txt
zu kopieren, verwenden wir den folgenden Befehl:
cp abc.txt backup.txt
Er kopiert den Inhalt der Datei abc.txt
in die Datei backup.txt
. Dabei müssen sich beide Dateien im aktuellen Arbeitsverzeichnis befinden.
Wenn die Zieldatei bereits existiert, wird der Inhalt der Zieldatei überschrieben.
Wir können das Flag -i
zum Befehl cp
hinzufügen, um vor dem Kopieren eine Bestätigungsabfrage zu erhalten.
cp -i abc.txt backup.txt
Ausgabe:
cp: overwrite 'backup.txt'?
Wenn wir die Datei kopieren wollen, drücken wir die Taste Y
und drücken Enter.
Um Informationen oder eine Vorstellung davon zu erhalten, was mit dem cp
-Befehl getan wird, können wir das -v
-Flag mit dem cp
-Befehl verwenden.
cp -v abc.txt backup.txt
Ausgabe:
'abc.txt' -> 'backup.txt'
Es zeigt den Inhalt der Datei abc.txt
an, die nach backup.txt
kopiert wird.
Dateien mit dem cp
-Befehl in ein Verzeichnis kopieren
Um eine Datei in ein Verzeichnis zu kopieren, verwenden wir den Befehl cp
. Das erste Argument für den cp
-Befehl ist der Name der zu kopierenden Datei, und das zweite Argument ist der absolute oder relative Pfad des Verzeichnisses, in das die Datei kopiert werden soll.
cp abc.txt ./test
Er kopiert die Datei abc.txt
im aktuellen Arbeitsverzeichnis in den Ordner im aktuellen Arbeitsverzeichnis test
.
Um die Datei in das bestimmte Verzeichnis mit einem anderen Namen als der der übergeordneten Datei zu kopieren, können wir den Namen der Datei als angeben:
cp abc.txt ./test/test.txt
Er kopiert die Datei abc.txt
in den Ordner test
mit dem Namen test.txt
.
Mehrere Dateien kopieren
Wir können mehrere Dateien und Verzeichnisse mit dem cp
-Befehl in ein bestimmtes Verzeichnis kopieren, indem wir alle Quelldateien und -verzeichnisse angeben, gefolgt von dem Zielverzeichnis am Ende.
cp abc.txt backup.txt test backup
Dadurch werden die Dateien abc.txt
und backup.txt
sowie der Ordner test
in den Ordner backup
kopiert.
Der Befehl cp
erlaubt auch den Mustervergleich.
cp *.txt backup
Dadurch werden alle Dateien mit der Erweiterung .txt
im aktuellen Arbeitsverzeichnis in den Ordner backup
kopiert.
Verzeichnisse mit dem cp
-Befehl kopieren
Wir benutzen die Flagge -r
oder -R
zusammen mit dem Befehl cp
, um das Verzeichnis und seine Unterverzeichnisse und Dateien in das Zielverzeichnis zu kopieren.
cp -r pp Project
Es kopiert das gesamte Verzeichnis pp
und seine Unterverzeichnisse und Dateien in das Zielverzeichnis Project
.
In diesem Beispiel gibt es ein Verzeichnis pp
innerhalb des Verzeichnisses Project
.
Wenn wir jedoch nur Dateien und Unterverzeichnisse kopieren wollen, benutzen wir das -T
Flag zusammen mit dem -R
Flag.
cp -RT pp Project
Es kopiert die Unterverzeichnisse und Dateien des pp
-Verzeichnisses in das Zielverzeichnis Project
.
Dateien und Verzeichnisse mit dem rsync
-Befehl kopieren
rsync
ist ein Kommandozeilen-Dienstprogramm zum Synchronisieren von Dateien und Verzeichnissen zwischen zwei Hosts. Wenn sowohl der Quell- als auch der Zielpfad den localhost
repräsentieren, verhält sich der Befehl rsync
wie ein Kopierbefehl.
rsync -a abc.txt backup.txt
Es kopiert den Inhalt der Datei abc.txt
in die Datei backup.txt
.
Hier sorgt -a
flag dafür, dass symbolische Links, Modifikationszeiten, Gruppe, Eigentumsverhältnisse und Berechtigungen während des Kopierens erhalten bleiben.
Auf ähnliche Weise können wir ein Verzeichnis in ein anderes Verzeichnis kopieren.
rsync -a /abc /backup-abc
Dabei wird der Inhalt des Verzeichnisses abc
in das Zielverzeichnis backup-abc
kopiert.
Wenn wir hier den abschließenden Schrägstrich /
weglassen, dann wird das Quellverzeichnis innerhalb des Zielverzeichnisses kopiert.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedInVerwandter Artikel - Linux Files and Directories
- Wie löscht man Dateien und Verzeichnisse im Linux-Terminal
- Sichere Übertragung von Dateien und Verzeichnissen mit SCP
- Umbenennen von Dateien und Verzeichnissen mit Linux-Terminal
- Wie extrahiert man Bzip2-Dateien mit dem Terminal
- Wie man Dateien und Verzeichnisse unter Linux mit dem Mv-Befehl verschiebt