¿Cómo puedo evitar descender ciertos directorios con 'buscar'?

¿Cómo puedo evitar descender ciertos directorios con 'buscar'?

Actualmente tengo este comando de búsqueda que evita descender directorios particulares:

find . \! \( -name ".hg" -prune \) \! \( -name "localhost" -prune \) \! \( -name "logs" -prune \) -type f

El comando funciona como quiero, pero estoy buscando una solución más concisa. Siento que me estoy repitiendo mucho y debe haber una forma más elegante/corta de lograr lo mismo.

Respuesta1

find . \( \( -name .hg -o -name localhost -o -name logs \) -prune \) -o -type f

Respuesta2

find . -not \( -regex ".*/(.hg|localhost|logs)" -prune \) -type f

información relacionada