17 votos

¿Cómo puedo encontrar (o excluir) todos los directorios y sub-directorios que coinciden con un patrón determinado (en Linux)?

Estoy tratando de utilizar el Linux comando buscar para encontrar todos los directorios y sub-directorios que no tienen .svn (Subversion carpetas ocultas) en su camino. Sólo puedo llegar a excluir a la real .svn directorios ellos mismos, pero no de cualquiera de los sub-directorios.

Aquí es lo que estoy haciendo ahora mismo:

find . -type d \! -iname '*.svn*'

También he intentado:

find . -type d \! iname '.svn' \! iname '.svn/*'

Sólo un FYI, estoy tratando de utilizar el encontrar el patrón para que yo pueda aplicar algunas propiedades de subversion a todos los directorios en mi repositorio de exclusión de la subversión carpetas ocultas y sus sub-directorios (aplicando el comando exec para los directorios devuelto desde el comando find)..

TIA

25voto

Dan Carley Puntos 17278
find . -type d -not \( -name .svn -prune \)

6voto

wazoox Puntos 3514

Lo que se trata de simplemente

find . -type d |  grep -v '.svn'

6voto

mblsha Puntos 305

¿Qué acerca de la -path opción de encontrar?

find . -type d ! -path '*.svn*'

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: