Ich möchte ein Verzeichnis über die Befehlszeile von einem Ort zum anderen kopieren

127

Ich möchte ein Verzeichnis von einem Ort in einen anderen Ordner kopieren.

sudo cpist der Befehl, aber was soll ich danach eingeben? Das Ziel oder die Quelle zuerst?

pradeep
quelle
10
Hilft das man cp?
Portablejim

Antworten:

198

Die -aFlagge ist wahrscheinlich das, wonach Sie suchen:

cp -a /path/from /path/to

Das -aFlag aktiviert das rekursive Verhalten (das auch mit dem -RFlag durchgeführt werden kann) und versucht außerdem, Metadaten wie Dateieigentum, Berechtigungen, Zeitstempel, Links usw. beizubehalten.

Sie sollten diese Option nur verwenden, sudowenn Sie an einen Speicherort kopieren, der nicht dem aktuellen Benutzer gehört, wenn der aktuelle Benutzer keine Leseberechtigung für die zu kopierenden Dateien besitzt oder wenn Sie den Besitz für Dateien beibehalten möchten, die nicht dem aktuellen Benutzer gehören Benutzer.

James Henstridge
quelle
4
Außerdem ist es in der Regel immer so [command] [source] [destination]. Dies gilt für mv, cp, ren.
Vineet Menon
1
@VineetMenon Du meinst wahrscheinlich mvnicht ren.
jcollado
@jcollado: ich habe schon hinzugefügt mv!!
Vineet Menon
@VineetMenon Ja, du hast recht, ich habe nicht gesehen, dass mvdas schon in der Liste war. Mein Punkt war jedenfalls, dass es, soweit ich weiß, keinen renBefehl gibt (es sei denn, Sie haben einen Alias ​​oder einen Satz).
jcollado
1
@jcollado: haha ​​... das war mein Pseudonym für rename...: D
Vineet Menon
28

Wenn Sie das Verzeichnis kopieren möchten, verwenden Sie bitte den folgenden Befehl:

sudo cp -R Source_Folder Destination_Folder

Dieser Befehl kann auch zum Kopieren von Dateien verwendet werden, indem einfach das "-R" entfernt wird, das zum Kopieren der rekursiven Struktur interner Ordner verwendet wird (sofern im Pfad "Source_Folder" welche vorhanden sind).

Ein weiteres Beispiel:

sudo cp -R /var/www/* /home/test_user/

Bei Problemen können Sie gerne einen Kommentar hinterlassen.

Hrish
quelle
7

Zum Kopieren von Ordnern über das Terminal können Sie verwenden

cp -a /source/. /dest/

Die Option -a ist eine verbesserte rekursive Option, die alle Dateiattribute und auch Symlinks beibehält.

Das . Am Ende des Quellpfads befindet sich eine bestimmte cp-Syntax, mit der alle Dateien und Ordner, einschließlich versteckter, kopiert werden können.

Eine Alternative ist rsync

rsync -r source/ destination
shail
quelle
2

Ich denke, der bessere Weg ist die Verwendung von gksu nautilusBefehlen, und Sie können wie gewohnt mit der allgemeinen Benutzeroberfläche kopieren, was immer Sie wollen.

Af Vtr
quelle
1
Dies setzt voraus, dass Sie eine GUI und keine CLI verwenden.
Phill Healey