Wie kopiere ich mit jeder einzelnen Datei ein Verzeichnis von einer Festplatte auf eine andere?


16

Ich habe einen Ordner, auf dem ich mich zum Glück wieder erholt habe:

/media/sdc1/Pictures

mit einer Menge von Unterverzeichnissen und Dateien, die ich brauche.

Ich möchte diese in einen Ordner kopieren auf:

/media/sdb1/Pictures

Welchen Befehl muss ich im Terminal verwenden, um sicherzustellen, dass dies geschieht? Ich weiß, da ist der cpBefehl. Aber ist das die beste Wahl? Und wenn ja, welche Optionen sollte ich verwenden, um sicherzustellen, dass ich jedes einzelne Verzeichnis und jede einzelne Datei erhalte?

Antworten:


20

Ich würde dafür rsync verwenden, damit Sie bei einem Fehler (oder wenn Sie den Kopiervorgang vorübergehend beenden müssen) später problemlos fortfahren können, ohne alles neu kopieren zu müssen.

rsync -av /media/sdc1/Pictures/ /media/sdb1/Pictures/

3
Ich würde das entfernen, *da es Dotfiles auf der ersten Ebene weglassen wird. Es kann auch dazu führen, dass das ARG_MAX-Limit überschritten wird.
Geirha

@geirha guter Punkt. bearbeitet.
AMC

12

cp -r /media/sdc1/Pictures/* /media/sdb1/Pictures/some_dir

  • Das -rist rekursiv, lies die Manpage ...
  • Mit /media/sdc1/Pictures/*dem Sternchen wird der gesamte Inhalt /media/sdc1/Pictures/, aber nicht das übergeordnete Verzeichnis selbst kopiert .
  • Das some_dir von /media/sdb1/Pictures/some_dirist, wo Sie es setzen möchten.

kopiert dieses auch dotfiles und dotdirs?
Farinspace

1

Wenn Sie ein genaues Bild benötigen, verwenden Sie den Befehl dd if=(path) of=(path)


4
Achtung, dieser Befehl kann bei falscher Verwendung
Ihren

Sie können keine Verzeichnisse mit kopieren dd!
mook765
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.