¿Cómo copiar un directorio de un disco duro a otro con cada archivo?

17

Tengo una carpeta que afortunadamente recuperé sentada en:

/media/sdc1/Pictures

con un montón de subdirectorios y archivos que necesito.

Quiero copiarlos a una carpeta en:

/media/sdb1/Pictures

¿Qué comando tengo que usar en la terminal para asegurarme de que esto suceda? Sé que hay un cpcomando. ¿Pero es esa la mejor opción? Y si es así, ¿qué opciones debo usar para asegurarme de obtener cada directorio y archivo?

Wardr
fuente

Respuestas:

21

Usaría rsync para esto, de modo que si hay un error (o necesita dejar de copiar) a mitad de camino, pueda reanudarlo fácilmente más tarde, sin tener que volver a copiar todo.

rsync -av /media/sdc1/Pictures/ /media/sdb1/Pictures/
amc
fuente
3
*Quitaría el ya que omitirá los archivos de puntos en el primer nivel. También puede hacer que exceda el límite ARG_MAX.
geirha 01 de
@geirha buen punto. editado
amc
12

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

  • El -res recursivo, lea la página de manual ...
  • Con /media/sdc1/Pictures/*el asterisco es copiar todo el contenido de /media/sdc1/Pictures/, pero no el directorio principal en sí.
  • El some_dir de /media/sdb1/Pictures/some_dires donde quieres ponerlo.
recatado
fuente
¿esto también copiará archivos de puntos y dotdirs?
farinspace
1

Si necesita una imagen exacta, use el comando dd if=(path) of=(path)

RGS
fuente
44
Tenga cuidado, este comando podría matar completamente su computadora si se usa incorrectamente
MikeSchem
No puedes copiar directorios con dd!
mook765