Jak skopiować katalog z jednego dysku twardego na drugi za pomocą każdego pliku?


17

Mam folder, który na szczęście odzyskałem, siedząc:

/media/sdc1/Pictures

z WIĄZKĄ podkatalogów i plików, których potrzebuję.

Chcę je skopiować do folderu na:

/media/sdb1/Pictures

Jakiego polecenia należy użyć w terminalu, aby mieć pewność, że tak się stanie? Wiem, że jest to cppolecenie. Ale czy to najlepszy wybór? A jeśli tak, jakich opcji powinienem użyć, aby uzyskać każdy katalog i plik?

Odpowiedzi:


21

Użyłbym do tego rsync, aby w przypadku wystąpienia błędu (lub musisz przestać kopiować) w połowie możesz łatwo wznowić później, bez konieczności kopiowania wszystkiego.

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

3
Chciałbym usunąć, *ponieważ pominie pliki kropkowe na pierwszym poziomie. Może to również spowodować przekroczenie limitu ARG_MAX.
geirha

@geirha dobry punkt. edytowane.
amc

12

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

  • -rJest rekurencyjne, przeczytać stronę man ...
  • Z /media/sdc1/Pictures/*gwiazdką jest, aby skopiować całą zawartość /media/sdc1/Pictures/, ale nie sam katalog nadrzędny.
  • Some_dir /media/sdb1/Pictures/some_dirjest miejscem, w którym chcesz go umieścić.

czy skopiuje również pliki dotfir i dotdir?
farinspace

1

Jeśli potrzebujesz dokładnego obrazu, użyj polecenia dd if=(path) of=(path)


4
Uwaga: to polecenie może całkowicie zabić komputer, jeśli zostanie użyte niepoprawnie
MikeSchem

Nie możesz kopiować katalogów dd!
mook765,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.