Как скопировать каталог с одного жесткого диска на другой с каждым файлом?

17

У меня есть папка, которую я только что, к счастью, нашел:

/media/sdc1/Pictures

с кучей подкаталогов и файлов, которые мне нужны.

Я хочу скопировать их в папку на:

/media/sdb1/Pictures

Какую команду я должен использовать в терминале, чтобы убедиться, что это происходит? Я знаю, что есть cpкоманда. Но это лучший выбор? И если да, то какие параметры я должен использовать, чтобы получить все каталоги и файлы?

wardr
источник

Ответы:

21

Я бы использовал для этого rsync, чтобы в случае возникновения ошибки (или вам нужно остановить копирование) на полпути вы могли легко возобновить ее позже, не переписывая все заново.

rsync -av /media/sdc1/Pictures/ /media/sdb1/Pictures/
AMC
источник
3
Я бы удалил, *так как он пропустит точечные файлы на первом уровне. Это также может привести к превышению лимита ARG_MAX.
Гейра
@geirha хорошая мысль. изм.
amc
12

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

  • -rРекурсивно, читать страницу человека ...
  • С /media/sdc1/Pictures/*помощью звездочки следует скопировать все содержимое /media/sdc1/Pictures/, но не сам родительский каталог.
  • Some_dir /media/sdb1/Pictures/some_dir- это место, куда вы хотите его поместить.
скромный
источник
будут ли копировать также точечные файлы и точечные каталоги?
Farinspace
1

Если вам нужно точное изображение, используйте команду dd if=(path) of=(path)

RGS
источник
4
Осторожно, эта команда может полностью убить ваш компьютер, если используется неправильно
MikeSchem
Вы не можете копировать каталоги с dd!
mook765