¿Cómo puedo fusionar dos carpetas similares pero no idénticas?

Tengo una carpeta (que está llena de muchas subcarpetas y archivos) que está en una unidad FireWire [origen] que estoy tratando de mover a una unidad USB [destino].

Estoy intentando mover todos los archivos del origen al destino.

Empecé a hacer esto a través de Finder, pero me dio un error de permisos alrededor de 1/8 del camino a través del proceso y luego se detuvo.

Al mover archivos entre unidades, creo que el Finder primero hace una 'copia' y luego elimina la 'fuente' solo cuando el comando de copia se ha completado con éxito.

Eso significa que algunos archivos se copiaron correctamente, pero no tengo idea de cuáles ni cuántos. Así que comencé a copiar subcarpetas de Origen a Destino (conjuntos más pequeños) y las eliminé de Origen cuando se copiaron con éxito.

Terminé sin poder completar ese proceso de una sola vez y perdí mi "lugar"

Así que ahora me quedan dos conjuntos de datos incompletos. El origen probablemente tenga algunos archivos/carpetas que ya están en el destino, pero no se ha copiado todo.

Es posible que algunas de las carpetas se hayan copiado parcialmente, pero no todas sus subcarpetas, etc.

Estoy tratando de encontrar la mejor manera de mover el resto del origen al destino y minimizar la duplicación. Estamos hablando de una gran cantidad de datos aquí (el origen es 420,72 GB en 398 127 elementos y el destino es 298,84 GB y 390 149 elementos), por lo que obviamente voy a tener que intentar automatizar esto de alguna manera . No estoy seguro de cómo.

He pensado en gcp[GNU cp] con --update --archiveo dittoo rsyncChronoSync , pero no estoy seguro de cuál es la mejor opción y qué configuración debo usar para cualquier programa recomendado (¿quiero --archivecon gcp? ¿Qué banderas usaría con dittoo rsync?)

Este software es increíble: bombich.com (Carbon Copy Cloner). Resuelve todos tus problemas.
CCC o SuperDuper solo me ayudarán a duplicar lo que tengo, ¿verdad? Necesito fusionarlos primero.
Puede fusionarse. Deberá ajustar la configuración usted mismo. es decir, personalizar esta configuración/configuración avanzada
Ah… no sabía eso. Definitivamente le echaré un vistazo.

Respuestas (2)

Puede abrir Terminal y usar uno de los siguientes ( rsync probablemente sería el indicado para usted si desea algo que no se pierda por completo si detiene el proceso ):

La forma estándar de UNIX

cp -R -v source/. destination

La forma geek de UNIX (reiniciable)

rsync -vaEW source/ destination

La forma "fácil" de OSX

ditto -V source destination

Fuente

¿Ese comando 'cp' no rompería los enlaces blandos? Por ejemplo, las aplicaciones de Mac a veces parecen usar enlaces dentro del contenedor .app. (Los enlaces son siempre el gran desconocido para mí cuando trato de hacer esto). Buen punto sobre rsync, ese puede ser el mejor plan ya que (con tantos datos) la posibilidad de interrupción es significativa.

Si usa FileMerge de Developer Tools en los dos árboles de directorios, podrá ver qué archivos individuales se han copiado, ya que hará una diferencia entre ellos y mostrará las diferencias.

De lo contrario rsync, podría ser un poco más automatizado como se mencionó anteriormente por cksum.