Omitir archivos .DS_Store al copiar entre dos unidades externas

11

Ya hay bastantes preguntas sobre .DS_Storearchivos, pero ninguna parece responder a mi problema.

Tengo un disco duro externo con una docena de ~ 50 GB de carpetas de respaldo. Cuando intento copiar estas carpetas en un nuevo disco duro externo arrastrando y soltando, falla porque

.DS_Store ya existe y no se pudo copiar.
[Detener]

Para evitar este problema, ¿cómo puedo omitir la copia de archivos .DS_Store al copiar entre dos discos duros?

Ciertamente existe una solución de comando de Terminal, pero no estoy lo suficientemente versado cppara encontrarla yo mismo. Toda la ayuda apreciada!

PD Ambos discos son Mac OS X Extended (con registro).

El p.
fuente
¿Estás copiando a un directorio existente? Supongo que de lo contrario no habría un archivo .DS_Store en el destino, pero en este caso está sobrescribiendo cualquier otro archivo
user151019
Estoy copiando directamente a la raíz del disco, no a un directorio existente, y no hay archivos existentes en el destino, por lo que no hay sobrescritura.
p.
Los mensajes de error dicen que hay un archivo .DS_Store en el destino: ¿qué se ls -almuestra en el destino?
user151019
ls- alno muestra nada en particular: supongo que es un problema de archivo dañado (los .DS_Storearchivos han estado causando problemas durante algún tiempo).
p.
1
Sin embargo, rsync es a menudo la mejor manera de todos modos
user151019

Respuestas:

20

Probar rsync -rv --exclude=.DS_Store <source> <destination>desde la terminal.

por ejemplo

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

hará:

  • (-r) recursivo (copie todo lo siguiente ~ / Documentos)
  • (-v) detallado (decirte lo que está haciendo)
  • (--excluir) excluyendo cualquier archivo llamado .DS_Store
  • desde ~/Documents
  • a /Volumes/Backup/Documents

rsynces como un cpcomando mejorado con muchas más opciones, más específicamente--exclude

hoss
fuente
Eso es exactamente lo que estaba buscando, ¡gracias!
p.