¿Cómo mover y fusionar carpetas en OSX Mavericks?

5

Tengo 2 subcarpetas (que en sí contiene muchas subcarpetas) en mi carpeta principal.

p.ej

main folder
== subfolder1
==== folder1
==== folder2
== subfolder2
==== folder1
==== folder3
==== folder4

algunas cosas en la subcarpeta2 ya están en la subcarpeta1. Si arrastro y suelto la subcarpeta2 en la subcarpeta1, me pedirá que reemplace las subcarpetas existentes y pierda cosas. La única forma de fusionar las carpetas que conozco es presionar la tecla de opción. Pero esto solo hace una copia. Esto todavía requiere que elimine la carpeta innecesaria.

Quiero mover la subcarpeta2 a la subcarpeta1 y fusionar sus contenidos. ¿Cómo puedo hacerlo? Muchas gracias :)

mrjayviper
fuente

Respuestas:

4

1 respuesta rápida

Ingrese este comando en la Terminal:

cp -r -n ./srcFolder/ ./targetFolder/
Elimine el -nsi desea sobrescribir duplicados.

Actualización:
ditto source target también hará el truco.

Los archivos en la carpeta de origen sobrescriben cualquier duplicado en la carpeta de destino.

Agregue -v para más detalles ( ditto -v source target)

a través de Cómo combinar carpetas en Mac OS X sin perder todos sus archivos (en serio)

2 Buscador de uso (sorprendentemente más complejo)

Posiblemente un duplicado de ¿Dónde se "fusionó" o "mantuvo ambos" la carpeta en OS X 10.9 Mavericks? , pero resumiré:

Lo extraño es que las carpetas no pueden tener archivos duplicados si desea fusionar.

Si está fusionando dos carpetas que no tienen archivos duplicados entre ellas, verá la opción de fusión si mantiene presionada la tecla de opción. ingrese la descripción de la imagen aquí

Sin embargo, si las carpetas que está fusionando contienen archivos con el mismo nombre, la opción de fusión no aparecerá. Si las carpetas contienen elementos duplicados

En ese caso, básicamente tienes dos opciones:

  1. use la línea de comando o
  2. elimine manualmente los duplicados, luego haga clic y arrastre + mantenga presionada la opción para fusionar.
mrgnw
fuente
1
Me encantaría saber quién hizo esto tan difícil de llevar a cabo :-(
Gareth Oakley
Oh hombre. Yo también. Esto es raro
mrgnw
Solo por diversión, hice un script que hace esto, y luego borro la carpeta usando una función de papelera que tengo. merge() { echo "Merging $(basename $1) into $(basename $2)"; ditto $@; trash $1; }
mrgnw