2013-02-12 8 views

risposta

21

È possibile utilizzare find

find . -type d > output.txt 

o tree

tree -d > output.txt 

tree , Se non installato sul tuo sistema m.

sudo apt-get install tree 
+0

In questa opzione, c'è un'opzione per escludere una singola cartella ... Ho un ~ snapshot folder in esso, che voglio escludere? – Sandeep540

+0

find. -type d -name ~ snapshot -prune> output.txt – Sandeep540

+0

È fantastico! E come possiamo ordinarlo per ordine alfabetico? – sangorys

4
find . -type d > list.txt 

Elencherà tutte le directory e sottodirectory nel percorso corrente. Se si desidera elencare tutte le directory in un percorso diverso da quello corrente, modificare lo . in quell'altro percorso.

Se si desidera escludere determinate directory, è possibile filtrarli fuori con una condizione negativa:

find . -type d ! -name "~snapshot" > list.txt 
+0

La mia preferenza è "du | less" (o "du | cut -f 2 | less ") ... ma la tua soluzione è migliore :) – paulsm4

+0

In questa opzione, c'è un'opzione per escludere una singola cartella ... Ho una cartella ~ istantanea in essa, che voglio escludere? – Sandeep540

+0

@ Sandeep540 Sicuro. 'Find. -type d! -name" ~ snapshot "> list.txt' – Amber

1

Così come find elencati in altre risposte, conchiglie migliori consentono sia globs recurvsive e filtraggio di partite glob, quindi in zsh per esempio ...

ls -lad **/*(/) 

... elenca tutte le directory, mentre mantenendo tutti i dettagli "-l" che si desidera, che si sarebbe altrimenti necessario per ricreare utilizzando qualcosa di simile ...

find . -type d -exec ls -ld {} \; 

(non è così facile come l'altro un swers suggeriscono)

Il vantaggio di trovare è che è più indipendente dalla shell - più portabile, anche per system() chiamate da all'interno di un programma C/C++, ecc ..

+0

In questa opzione, c'è un'opzione per escludere una singola cartella ... Ho una cartella ~ istantanea in essa, wh che voglio escludere? – Sandeep540

+0

@ Sandeep50: in zsh, sì: 'setopt EXTENDED_GLOB', quindi' ls -lad **/* ~ **/~ istantanea (/) '. Dettagli: da 'man zshall' /" x ~ y (Richiede EXTENDED_GLOB da impostare.) Corrisponde a tutto ciò che corrisponde allo schema x ma non corrisponde a y [...] ". (C'è anche "^ x (Richiede EXTENDED_GLOB da impostare.) Corrisponde a qualsiasi cosa tranne il modello x. [Ulteriore spiegazione di sintassi leggermente diversa + esempio]") –