Ainsi que find
répertoriés dans d'autres réponses, de meilleurs shells permettent à la fois les globs récursifs et le filtrage des correspondances glob, donc dans zsh
par exemple...
ls -lad **/*(/)
... répertorie tous les répertoires tout en conservant tous les détails "-l" que vous voulez, que vous auriez autrement besoin de recréer en utilisant quelque chose comme...
find . -type d -exec ls -ld {} \;
(pas aussi facile que les autres réponses le suggèrent)
L'avantage de find est qu'il est plus indépendant du shell - plus portable, même pour system()
appels depuis un programme C/C++ etc..
find . -type d > list.txt
Liste tous les répertoires et sous-répertoires sous le chemin actuel. Si vous souhaitez lister tous les répertoires sous un autre chemin que celui en cours, modifiez le .
à cet autre chemin.
Si vous souhaitez exclure certains répertoires, vous pouvez les filtrer avec une condition négative :
find . -type d ! -name "~snapshot" > list.txt
Vous pouvez utiliser find
find . -type d > output.txt
ou tree
tree -d > output.txt
tree
, s'il n'est pas installé sur votre système.
Si vous utilisez ubuntu
sudo apt-get install tree
Si vous utilisez mac os
.
brew install tree