Como encontrar o número de Subdiretórios sob um determinado diretório [duplicado]

7

No Windows, você obtém uma contagem do número de subdiretórios dentro de um diretório. Existe algum equivalente no Linux? Eu gostaria que contasse recursivamente & Não pare em um único nível.

    
por Dhiwakar Ravikumar 18.11.2014 / 07:12

2 respostas

7

Use find para contar todos os diretórios em uma árvore a partir do diretório atual:

find . -mindepth 1 -type d | wc -l

Note que -mindepth é necessário para excluir o diretório atual da contagem.

Você também pode limitar a profundidade da pesquisa com a opção -maxdepth da seguinte forma:

find . -mindepth 1 -maxdepth 1 -type d | wc -l

Mais find opções estão disponíveis. Você pode verificar a página do manual para isso,

    
por 18.11.2014 / 07:19
1

Se você quiser obter o número de diretórios e arquivos, use isto:

tree /path/to/given/dir | awk 'END{print}'

Se você quiser apenas um número de diretórios, adicione -d option:

tree /path/to/given/dir -d | awk 'END{print}'

a árvore funciona recursivamente.

    
por 18.11.2014 / 07:29