Como listar diretórios e subdiretórios com um diretório como argumento (Bash)

1

A tarefa é fazer um script bash no Ubuntu. É suposto ter um diretório como um argumento e listar todos os diretórios e subdiretórios desse argumento. Eu não tenho muita experiência com bash, você pode me ajudar?

    
por Falcool 13.03.2016 / 19:37

2 respostas

2

Existem várias maneiras / utils que você poderia fazer isso. Se você não puder instalar o tree , tente usar os disponíveis imediatamente.

Listar diretórios usando find

find . -type d

Depende exatamente do que você planeja fazer com os resultados. Eu sugiro que você veja este tópico para outras opções e inspiração.

    
por 13.03.2016 / 20:51
1

Você pode usar o comando tree [ 1 ].

  tree -d "$1"

A opção -d listará apenas os diretórios.

O $1 é o primeiro parâmetro que você passa para o script.

A propósito, não analise a saída do comando como tree ou ls para evitar problemas relacionados com a aba space e newline que são caracteres permitidos dentro de um nome de um arquivo ou de um diretório.

No último caso, você pode usar find . Peça man find em um shell ou pesquise por exemplo neste site sobre isso.

    
por 13.03.2016 / 20:35

Tags