Der cp-Befehl von Linux
Der Linux-Befehl cp steht als Abkürzung für den Kopierbefehl. Der cp-Befehl hilft beim schnellen Kopieren von Dateien und Verzeichnissen. Dies ist ein weit verbreiteter Befehl und enthält mehrere Optionen, die sowohl grundlegende als auch komplexere Kopieranforderungen erfüllen.
Die Kenntnis des Linux-Befehls cp ist eine wesentliche Fähigkeit in Ihrem Linux-Toolset. Wenn Sie in der Cybersicherheit, als DevOps- oder Linux-Administrator arbeiten, werden Sie diesen Befehl wahrscheinlich täglich verwenden. Ich zeige dir die wichtigsten Befehle.
Zu Beginn prüfen wir zuerst den Linux-CP Befehlssyntax und sehen Sie sich dann die verschiedenen möglichen Optionen an.
Die grundlegende Syntax für den cp-Befehl von Linux
Um diesen Befehl zu verwenden, müssten Sie die Quelle und das Ziel angeben, wo die Quelle zum Ziel kopiert wird.
cp [options] source destination
Kopieren Sie eine Datei innerhalb desselben Verzeichnisses in eine neue Datei mit einem neuen Namen
Sie können Sample.txt nach Sample_copy.txt kopieren, indem Sie den folgenden Befehl verwenden:
cp Sample.txt Sample_copy.txt
Datei aus dem aktuellen Verzeichnis in ein anderes Verzeichnis kopieren:
Aus Ihrem aktuellen Verzeichnis können Sie Dateien wie unten gezeigt in ein anderes /tmp-Verzeichnis kopieren:
cp Sample.txt /tmp
Kopieren Sie die Datei mit dem Linux-Befehl cp in ein anderes Verzeichnis mit einem neuen Dateinamen:
Im obigen Beispiel wird Sample.txt in ein anderes Verzeichnis mit demselben Namen kopiert. Derselbe Befehl kann jedoch geändert werden, um eine Datei in ein neues Verzeichnis zu kopieren und einen neuen Dateinamen zu vergeben. Ein solches Beispiel ist wie unten gezeigt:
cp Sample.txt /tmp/Sample_copy.txt
Hier erstellt dieser Linux-cp-Befehl eine neue Datei Sample_copy.txt mit demselben Inhalt wie Sample.txt.
Linux-CP-Optionen
Für den Linux-Befehl cp stehen mehrere Optionen zur Verfügung. Sie können diese Optionsliste auf den Handbuchseiten überprüfen. Dies kann mit dem untenstehenden sogenannten man-Befehl erfolgen.
man cp
Als Teil der Ausgabe sehen Sie die vollständige Liste der manuellen Eingaben für den cp-Befehl, wie unten gezeigt:
Falls Sie nur Optionen anzeigen möchten, können Sie auch den folgenden Befehl verwenden:
cp – help
Die unten gezeigte Ausgabe liefert alle relevanten Optionen für den Linux-Befehl cp.
Die Version für den cp-Befehl kann mit dem folgenden Befehl überprüft werden:
cp – version
Einige der häufig verwendeten Optionen sind:
- -f Dies wird zum erzwungenen Kopieren verwendet und entfernt die Zieldatei, falls die Datei bereits existiert
- - i Dies wird zum interaktiven Kopieren verwendet. Vor dem Überschreiben wird eine Aufforderung angezeigt.
- -n Diese Option erlaubt kein Überschreiben von Dateien
- -v Dies druckt informative Meldungen während des Kopierens
- -u Dies steht für Update und kopiert nur, wenn die Quelldatei neuer ist als das Ziel
- -R Dies steht für eine rekursive Kopie. Enthält auch zu kopierende versteckte Dateien
- -s Erstellen Sie einen symbolischen Link für eine Datei, anstatt sie zu kopieren.
- -l Dateien verknüpfen statt kopieren
- -p Dateiattribute beim Kopieren beibehalten. Dies kann Änderungszeitstempel, Zugriffszeit, Dateimodus, Datei-Flags, Benutzer-ID und Gruppen-ID beibehalten
- -b Diese Option erstellt vor dem Kopieren eine Sicherungskopie der Datei.
In einem einzelnen Kopierbefehl können Sie mehrere Optionen verwenden. Ein solches Beispiel ist wie unten gezeigt:
cp -vi /tmp/linux_cp /home/usr/linux_copy
Mehrere Dateien kopieren
Statt einer Datei können Sie auch zulassen, dass mehrere Dateien an einen bestimmten Ort kopiert werden. Im folgenden Beispiel werden zwei Dateien Sample.txt und Sample_copy.txt an den Speicherort /tmp
kopiertcp -vi /tmp/linux_cp /home/usr/linux_copy
Ebenso können Sie weitere Dateien hinzufügen, die in einen bestimmten Verzeichnisort kopiert werden sollen.
Mehrere Dateien mit derselben Erweiterung kopieren
Mit dem Linux-Befehl cp können Sie schnell alle Dateien mit derselben Erweiterung mit einem einzigen Befehl kopieren. Falls Sie alle .sh-Dateien in ein einzelnes Verzeichnis /tmp kopieren müssen, können Sie den folgenden Befehl verwenden:
cp *.sh /tmp
Ebenso können Sie jede andere Dateierweiterung kopieren. Falls Sie ein Muster von zu kopierenden Dateien wie Sample_1.sh, Sample_22.sh, Sample_32.sh haben, können Sie die Kopie wie unten gezeigt in einem Befehl konsolidieren:
cp Sample*.sh /tmp
Einzelne Verzeichniskopie
Ein einzelnes Verzeichnis kann direkt mit dem Befehl cp kopiert werden. Falls Sie das Testverzeichnis in das Verzeichnis /home/usr/linux_cp kopieren möchten, können Sie den folgenden Befehl verwenden:
cp test /home/usr/linux_cp
Alle Dateien aus dem aktuellen Verzeichnis kopieren
Um alle Dateien aus dem aktuellen Arbeitsverzeichnis in ein neues Verzeichnis zu kopieren, können Sie Folgendes versuchen:
cp * /home/usr/linux_cp
Rekursives Kopieren von Verzeichnissen und Unterverzeichnissen
Um alle in einem Verzeichnis vorhandenen Verzeichnisse und Dateien rekursiv zu kopieren, müssen Sie die Option -R verwenden, während Sie den Befehl cp verwenden. Falls Sie das Verzeichnis tmp in das Verzeichnis linux_cp kopieren möchten, können Sie den folgenden Befehl verwenden:
cp -R tmp linux_cp
Falls Sie auf einen anderen Verzeichnisort verweisen müssen, können Sie auch den absoluten Pfad des Verzeichnisses im obigen Linux-Befehl cp angeben.
Alle Dateien von einem Verzeichnis in ein anderes Verzeichnis kopieren
Um alle Dateien von einem Verzeichnis in ein anderes Verzeichnis zu kopieren, müssten Sie die Option -R verwenden, um alle Dateien rekursiv zu kopieren. Ein Beispiel für einen solchen Kopierbefehl ist wie folgt:
cp -R /tmp/linux_cp/* /home/usr/linux_copy
Dieser Linux-cp-Befehl kopiert alle Dateien und Verzeichnisse von /tmp/linux_cp nach /home/usr/linux_copy
Schlussfolgerung
Die Linux-Kopierbefehle werden häufig bei der Arbeit an der Shell verwendet. Der Linux-Befehl cp kann verwendet werden, um große Verzeichnisse und Dateien schnell zu kopieren und die vollständige Verzeichnisstruktur beizubehalten. Darüber hinaus unterstützen die cp-Befehle von Linux mehrere Optionen, wie Sie oben gesehen haben. Die Kenntnis des Linux-Befehls cp ist eine wesentliche Fähigkeit in Ihrem Linux-Reportoire.