Respuestas:
Simplemente proporcione todos los patrones al -I
comando, separados por |
. Desde la página del manual:
-P pattern
List only those files that match the wild-card pattern. Note:
you must use the -a option to also consider those files begin‐
ning with a dot `.' for matching. Valid wildcard operators are
`*' (any zero or more characters), `?' (any single character),
`[...]' (any single character listed between brackets (optional
- (dash) for character range may be used: ex: [A-Z]), and
`[^...]' (any single character not listed in brackets) and `|'
separates alternate patterns.
-I pattern
Do not list those files that match the wild-card pattern.
Así por ejemplo
tree -I 'test*|docs|bin|lib'
omite los directorios 'docs', 'bin' y 'lib', y cualquier directorio con 'test' en el nombre, donde sea que se encuentren dentro de la jerarquía de directorios. Obviamente, puede aplicar comodines para una coincidencia mucho más poderosa.
docs/subdoc/
puede excluir un subdirectorio como ?
tree --prune -P '*.html'
? También obtendrá directorios, pero solo aquellos con .html
archivos en ellos.