Linux: Datei kopieren - so funktioniert's

In Linux können Sie auch ohne schöne Benutzeroberfläche á la Ubuntu Dateien und Verzeichnisse sehr einfach kopieren. Dazu ist lediglich ein einzelner Befehl nötig. Sie können auch direkt mehrere zu kopierende Dateien eingeben, allerdings kann immer nur ein Zielverzeichnis angewählt werden. Weitere Erklärungen finden Sie unten.

Datei oder Verzeichnis in Linux kopieren

  1. Öffnen Sie das Terminal wie gewohnt mit [Strg] + [Alt] + [T].
  2. Jetzt können Sie den cp-Befehl, den Kopier-Befehl, eingeben. Dieser leitet sich von der Kurzform von "copy" (zu dt. kopieren) ab und ist immer gleich aufgebaut:

    cp [Optionen] [Quelle(n)] [Ziel]

    Statt [Quelle(n)] geben Sie die Dateinamen oder Verzeichnisse ein, die Sie kopieren möchten, beispielsweise "datei.txt".

    Für das [Ziel] geben Sie das Zielverzeichnis ein, in das die entsprechende Datei kopiert werden soll, beispielsweise "home/username/Dokumente".

    Für [Optionen] haben sie eine ganze Liste an Möglichkeiten, wie Sie den Kopieren-Befehl noch modifizieren können. Die wichtigsten Optionen haben wir für Sie in der folgenden Tabelle zusammengestellt:
Option Bedeutung
-b
--backup
Speichert Dateien vor dem Überschreiben zwischen, wenn es sich um zwei unterschiedliche Dateien mit dem gleichen Namen handelt.
-i
--interactive
Wenn eine Datei durch das Kopieren überschrieben werden würde, müssen Sie dies erst bestätigen.
-l
--link
Mit dieser Option wählen Sie aus, dass die Datei nicht in das Zielverzeichnis kopiert wird. Stattdessen wird dort ein Link auf den Speicherort dieser Datei gesetzt, ein sogenannter "harter Link".
-n
--no-clobber
Mit dieser Option werden keine vorhandenen Dateien überschrieben.
-p (eines kleines p)
--preserve=timestamps,ownership
Die Standard-Eigenschaften der kopierten Datei werden beibehalten. Je nach Wahl kann dies beispielsweise der Zeitstempel für Erstellung und Bearbeitung (timestamps) oder auch der Ersteller der Datei (ownership) sein.
-P (ein großes P)
--no-dereference
Symbolische Links werden als symbolische Links kopiert, anstatt dass das System der angegebenen Adresse folgt.
-s
--symbolic-link
Anstatt zu kopieren, wird ein symbolischer Link (also ein Verweis) erstellt.
-u
--update
Hier wird die Datei nur kopiert, wenn sich die Datei schon im Zielverzeichnis befindet und diese älter ist als die zu kopierende Datei.
-v
--verbose
Hier zeigt das Terminal genau an, welche Aktionen durchgeführt werden.

Anwendungsbeispiele

Weil die reine Beschreibung des Befehls ein wenig umständlich ist, haben wir einige Beispiele für Sie zusammengestellt. Dazu wird jeweils der Befehl angezeigt und dann die Bedeutung dieser Eingabe genauer erklärt:

  • cp -iv /home/username/Dokumente home/username/Backup

    Hier werden sämtliche Dateien aus dem Verzeichnis "home/username/Dokumente" in das Verzeichnis "home/username/Backup" verschoben. Dabei wird geprüft, ob eine Datei überschrieben wird und wenn dies der Fall ist, wird der Nutzer vor dem Überschreiben um Bestätigung gebeten. Außerdem wird der Kopierfortschritt angezeigt.
  • cp -u datei.txt home/username/Dokumente

    Hier wird die Datei "Datei.txt" in das Verzeichnis "home/username/Dokumente" kopiert. Dies geschieht aber nur, wenn die bereits in diesem Verzeichnis befindliche Datei "Datei.txt" älter ist als die einzukopierende Datei.
  • cp -n datei.txt datei2.txt dokument.docx home/username/Dokumente

    In diesem Beispiel werden gleich drei Dateien, nämlich die Dateien "Datei.txt", "Datei2.txt" und "Dokument.docx" in das Verzeichnis "home/username/Dokumente" verschoben. Dabei wird sichergestellt, dass keine im Verzeichnis befindliche Datei überschrieben wird.