Comment pouvons-nous spécifier plusieurs modèles d'ignorance pour la commande `tree`?


105

J'ai besoin d'imprimer la structure de répertoires de notre système de production et j'aimerais supprimer certains répertoires spécifiques de l' arborescence ?

Comment pouvons-nous spécifier plusieurs modèles d'ignorance pour la treecommande?

Réponses:


141

Vous fournissez simplement tous les modèles à la -Icommande, séparés par |. De la page de manuel:

-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.

Donc, par exemple

tree -I 'test*|docs|bin|lib'

ignore les répertoires 'docs', 'bin' et 'lib', ainsi que tous les répertoires avec le nom 'test' dans le nom, où qu'ils se trouvent dans la hiérarchie des répertoires. De toute évidence, vous pouvez appliquer des caractères génériques pour une correspondance beaucoup plus puissante.


4
Regardé la page de manuel, vu une explication très concise pour "-I", était frustré. Je n'ai pas pensé à regarder quelques lignes ci-dessus. Merci. ;)
Tomislav Nakic-Alfirevic

Comment configurer le filtre pour obtenir des fichiers .html uniquement, rien d'autre
Jitendra Vyas

Merci! J'utilise ceci pour parcourir mon code à partir de la ligne de commande en excluant node_modules.
thevangelist

2
Comment un sous-répertoire tel que docs/subdoc/exclu?
user1032531

@JitendraVyas: que diriez- tree --prune -P '*.html'vous? Vous obtiendrez également des répertoires, mais uniquement ceux contenant des .htmlfichiers.
fbicknel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.