Comment imprimer l'arborescence de répertoires dans le terminal


131

Quelle est la commande pouvant être utilisée pour dessiner l’arborescence de répertoires à l’intérieur de l’émulateur de terminal?

entrez la description de l'image ici

Réponses:


176

Vous pouvez utiliser treepour imprimer l’arborescence de répertoires dans le terminal. Installer treedepuis le terminal,

sudo apt-get install tree

Pour voir l’arborescence, utilisez

tree /path/to/folder

Ou accédez à un répertoire et utilisez simplement

tree

Il a aussi des options avancées. Vous pouvez voir propriétaire username, groupname, date de la dernière modification d'un fichier / dossier et ainsi de suite à l' aide tree. Il prend en charge les couleurs de répertoire de lssorte que vous puissiez voir les sorties colorisées.

Voir man treepour plus.


6
Si vous souhaitez arborer uniquement les répertoires, utilisez -dswitch.
Souravc

outil propre et facile
zhihong

3
ou si vous utilisez Brew sur OSX. "brew install tree"
AshHimself

Je cherchais comment le faire sur Win7 + cmder: treefonctionne bien.
Benj

@AshHimself yep m'a battu. ;)
jamescampbell

46

Vous pouvez le faire facilement avec la commande suivante:

find . -type d | sed -e "s/[^-][^\/]*\//  |/g" -e "s/|\([^ ]\)/|-\1/"

Cette commande va rechercher de manière récursive les répertoires à l'intérieur du répertoire parent, puis dessine l'arborescence des répertoires fondés.

Vous pouvez également essayer ce qui suit pour inclure tous les fichiers.

find | sed 's|[^/]*/|- |g'

7
S'il vous plaît diviser et expliquer la commande ci-dessus pour moi.
Avinash Raj

3
@AvinashRaj Buddy, la commande est claire si vous souhaitez en savoir plus sur sed, reportez-vous à certains tutoriels ou recherchez-le sur Google. C'est vraiment difficile d'expliquer tout sed ici!
Maythux

2
Maythux, vous avez raison de dire que si vous comprenez sed, votre script est clair, mais ne vous y trompez pas en pensant que sed / regexes est tout sauf un langage crypté que vous avez appris au fil des ans. Ce n'est pas intuitif - ce qui, à mon avis, est l'esprit du commentaire d'Avinash Raj.
aaaaaa

Que devrais-je changer pour ignorer les répertoires cachés?
cadams

1
comment laisser un répertoire spécifique?
Deepak Dholiyan

14

Il existe un programme appelé treeliste le contenu du répertoire dans une arborescence.

Je pense que c'est dans les dépôts (ou même installés)

sudo apt install tree

tree -d /path/to/directory

Vérifiez ce lien pour plus.

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.