Necesito imprimir la estructura de directorios de nuestro sistema de producción y me gustaría eliminar algunos directorios específicos del árbol.
¿Cómo especificamos múltiples patrones de ignorar para tree
? comando?
Respuesta aceptada:
Simplemente proporcione todos los patrones al -I
comando, separados por |
. Desde la página de 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.
Entonces, por ejemplo
tree -I 'test*|docs|bin|lib'
omite los directorios 'docs', 'bin' y 'lib', y cualquier directorio con 'test' en el nombre, dondequiera que se encuentren dentro de la jerarquía de directorios. Obviamente, puede aplicar comodines para una coincidencia mucho más poderosa.