Come ottenere l'elenco dei file di una cartella e di tutte le sottocartelle?

Un simile elenco può essere generato sia utilizzando programmi in GUI (interfaccia grafica) che in CLUI (riga di comando, nel Terminale).

Interfaccia Grafica

Scaricare BBEdit (commerciale con periodo di valutazione) o la sua versione free TextWrangler.

Lanciare il programma, e trascinare sulla finestra di un documento di testo la cartella di cui si desidera ottenere l’indice.
L’indice viene creato con tanto di indentazioni a tab per i livelli di nidificatione.

Riga di comando

Lanciare il Terminale, spostarsi nella directory interessata e scegliere uno dei seguenti comandi:

  • Solo le cartelle:
    $ find . -type d | sed -e 1d -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|-/'

  • Sia le cartelle che i file:
    $ find . | sed -e 1d -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|-/'

Il risultato sarà una cosa del tipo:

$ cd ~/Movies
$ find . -type d | sed -e 1d -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|-/'
 |--dvd
 |----docwho28
 |--Follie
 |--Sigle cartoni
 |--Spot
 |----apple ads
 |----birrasvizzera
 |----out
 |--Yo-Yo

Se ilcomando viene utilizzato spesso può essere conveniente crearne un alias.
Per bash ad esempio potremo definire un alias in ~/.bash_profile o ~/.bash_rc con la seguente sintassi:

alias elenco="find . | sed -e 1d -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|-/'"

Per stampare direttamente l’elenco

Sarà sufficiente trascinare la cartella sull’icona di una Stampante di Scrivania (Desktop Printer), come si faceva con Mac OS 9.

[ Home | Elenco delle FAQ | Risorse | Feed RSS ]