Пропуск файлов .DS_Store при копировании между двумя внешними дисками

11

Уже есть довольно много вопросов по .DS_Storeфайлам, но ни один из них не отвечает на мою проблему.

У меня есть внешний жесткий диск с дюжиной ~ 50 ГБ папок для резервных копий. Когда я пытаюсь скопировать эти папки на новый внешний жесткий диск путем перетаскивания, происходит сбой, потому что

.DS_Store уже существует и не может быть скопирован.
[Стоп]

Чтобы обойти эту проблему, как можно пропустить копирование файлов .DS_Store при копировании между двумя жесткими дисками?

Конечно, существует терминальное командное решение, но я не достаточно разбираюсь, cpчтобы найти его сам. Вся помощь приветствуется!

PS Оба диска Mac OS X Extended (в журнале).

Fr.
источник
Вы копируете в существующий каталог? Я предполагаю, что в противном случае не будет файла .DS_Store для цели, но в этом случае вы перезаписываете любые другие файлы
user151019
Я копирую напрямую в корень диска, а не в существующий каталог, и в целевой папке нет существующих файлов, поэтому перезапись отсутствует.
о.
В сообщениях об ошибках говорится, что в целевом файле есть файл .DS_Store - что ls -alотображается в целевом файле ?
user151019
ls- alне показывает ничего конкретного: я предполагаю, что это проблема поврежденного файла ( .DS_Storeфайлы вызывают проблемы в течение некоторого времени).
о.
1
Тем не менее, rsync всегда лучше, так или иначе
user151019

Ответы:

20

Попробуй rsync -rv --exclude=.DS_Store <source> <destination>из терминала.

например

rsync -rv --exclude=.DS_Store ~/Documents /Volumes/Backup/Documents

Сделаю:

  • (-r) рекурсивный (скопируйте все ниже ~ / Documents)
  • (-v) многословно (скажу вам, что он делает)
  • (--exclude) исключая любой файл с именем .DS_Store
  • от ~/Documents
  • в /Volumes/Backup/Documents

rsyncэто как команда suped up cpс большим количеством опций, особенно--exclude

конь
источник
Это именно то , что я искал, спасибо!
о.