Sie verwenden -r
(rekursiv kopieren) und geben den neuen Namen an
cp -r /path/to/directory /path/to/location/new-name
Ersetzen Sie durch die tatsächlichen Pfade ..., um beispielsweise stuff
von meinem Ausgangsverzeichnis in ein vorhandenes Verzeichnis zu kopieren backup
und das neue Verzeichnis zu benennen stuff-backup
(falls dieses Verzeichnis bereits vorhanden ist, beachten Sie, dass stuff
es in dieses Verzeichnis kopiert und nicht überschrieben wird).
cp -r ~/stuff ~/backup/stuff-backup
~
ist eine Verknüpfung für Ihr Home-Verzeichnis /home/$USER
oder /home/zanna
in meinem Fall. Sie können es weglassen, wenn das aktuelle Arbeitsverzeichnis Ihr Ausgangsverzeichnis ist. Dies können Sie an Ihrer Eingabeaufforderung sehen
zanna@monster:~$
^--the ~ here is where I am - home!
Sie können das -v
Verbose-Flag hinzufügen , um cp
jeden durchgeführten Kopiervorgang zu melden ...
$ cp -vr stuff backup/stuff-backup
'stuff/thing1' -> 'backup/stuff-backup/thing1'
'stuff/thing2' -> 'backup/stuff-backup/thing2
...
-v
oder--verbose
flag :)Der Befehl, den Sie brauchen, ist einfach,
cp
was für "Kopieren" steht.Sie können es beispielsweise mit einer der folgenden Syntaxen verwenden:
Mit der ersten Variante können Sie einen neuen Dateinamen für die Zieldatei angeben, während mit der zweiten Variante eine gleichnamige Kopie im Zielverzeichnis erstellt wird. Sie müssen natürlich zuerst die Platzhalter in Großbuchstaben durch gültige Pfade ersetzen.
Allerdings
cp
arbeitet standardmäßig Dateien auf, nicht nur auf Verzeichnisse. Um ein vollständiges Verzeichnis mit seinem gesamten Inhalt rekursiv zu kopieren, müssen Sie die folgende-r
Option hinzufügen :Sie können mehr über den
cp
Befehl erfahren, indem Sieman cp
Ihr Terminal eingeben .quelle
Alternativ zum allgemein nützlichen Befehl cp können Sie rsync verwenden, das den zusätzlichen Vorteil hat, die Berechtigungen / Zeitstempel der ursprünglichen Verzeichnisstruktur zu replizieren:
-a Archiv -v ausführlich
Beachten Sie den Schrägstrich nach dem Quellverzeichnis.
quelle
Ich finde es einfacher, in das Verzeichnis zu wechseln, aus dem ich zuerst kopiere. In diesem Beispiel wechseln Sie in ein Verzeichnis, das alle aufgerufen haben
/boot
. Jeder kann die folgenden Befehle kopieren und in sein Terminal einfügen.Für den
cp
Befehl wird das aktuelle Verzeichnis als.
das Verzeichnis identifiziert, in das/boot
wir gewechselt haben. Die-r
Option macht es rekursiv, alle Unterverzeichnisse einzuschließen.Um sicherzustellen, dass es funktioniert, führen Sie in diesem Fall
du
alle Unterverzeichnisse und Gesamtdateigrößen im neuen Verzeichnis/boot_backup
auf.Verwenden Sie nach Abschluss dieser Anleitung:,
sudo rm -r /boot_backup
um das neue Verzeichnis und seine Unterverzeichnisse zu entfernen.quelle
cp -r
), die dafür sorgen, dass ein neues Verzeichnis erstellt und alle Dateien in dieses kopiert werdencp -r
wie du empfiehlst steht schon in der dritten befehlszeile. Das Tutorial basiert auf der Tatsache, dass jeder ein/boot
Verzeichnis hat und dies auf seinem eigenen Computer ausprobieren kann. Hätte ich verwendetcp -r /home/GroundZero/Documents /home/GroundZero/Documents_backup
, könnten Leser nicht kopieren und in ihr Terminal einfügen - sie müssten ÄnderungenGroundZero
vornehmen, die mehr Arbeit und Fehlerquellen schaffen. Ich hoffe, Sie schätzen das KISS dieser Antwort mit einem eingebetteten Tutorial.cd ~/Documents/SomeObsucreFolder/2016/Nov/
das aktuelle Verzeichnis als Quellverzeichnis festlegen, wird die Terminal-Eingabeaufforderung geändert, um sicherzustellen, dass es richtig geschrieben ist.cp -r .
Wenn Sie es dann als Quelle verwenden, müssen Sie das Quellverzeichnis nicht erneut eingeben. Es ist einfach das, was ich für eine gute Angewohnheit halte. Zusätzlich einmal Quellverzeichnis zu ändern ist es einfach zu tunls FIleName1
,ls FileName2
etc. Dateien , die Sie sichern möchten esnure gibt es , ohne das Quellverzeichnis Namen für das wiederholenls
Befehl.Sie können den folgenden Befehl verwenden, um das Verzeichnis von einem Ort in ein anderes Unterverzeichnis zu kopieren.
Erklärung des Befehls:
quelle
cp
ist der Befehl, der die gesuchte Funktion ausführt. Es steht für Kopie und es macht genau das. Der Befehl, der in dieser Situation für Sie funktionieren würde, lautetcp -R source/ destination/
Dies würde den
source/
Ordner und alle seine Unterverzeichnisse in kopierendestination/
.Wenn
destination/
nicht vorhanden, wird es erstellt.Das
-R
Flag steht für rekursiv und weistcp
an, alle Unterverzeichnisse zu kopieren.quelle
Sie möchten im Allgemeinen die Dateiberechtigungen beim Erstellen einer Kopie beibehalten, nicht die neuen Standarderstellungsberechtigungen. Dies bedeutet, dass Sie -a flag für cp verwenden.
quelle