Estoy tratando de copiar todos los archivos y carpetas de un directorio a otro, pero excluyo ciertos archivos. Específicamente, quiero excluir archivos y carpetas de subversión. Sin embargo, me gustaría una solución general pero concisa.
Me imagino que encontraré la necesidad de excluir varios tipos de archivos en el futuro cercano. Por ejemplo, podría querer excluir .svn, * .bak y * .prj.
Esto es lo que he reunido, pero no me funciona. La primera parte, buscar trabajos, pero estoy haciendo algo mal con xargs y cp . Intenté cp con y sin el -R. Además, estoy usando OS X y parece tener una versión menos destacada de xargs que los sistemas Linux.
find ./sourcedirectory -not \( -name .svn -a -prune \)
| xargs -IFILES cp -R FILES ./destinationdirectory
-Rbandera, estoy bastante seguro. Quite eso y que debe estar bien (aunque es posible que desee añadir -mindepth 1a ignorar la carpeta directorio principal, que no desea copiar, supongo)
findcomando usa correctamente-prunepara excluir elementos .svn, entonces pasa la-Rbandera a lacpque le dice que ese comando sea recursivo. Cuando lo hace, pierde la granularidad que tenía en elfindcomando. Voy a jugar con esto por un minuto, pero creo que la respuesta es no usarlo-Ren elcpcomando.