Come utente Linux, la nostra prima scelta per gli elenchi di directory è il buon vecchio comando ls. Il comando ls, tuttavia, manca di alcune funzionalità fornite dal nostro argomento in discussione:il comando tree. Questo comando stampa le cartelle, le sottocartelle ei file sotto forma di albero. Puoi rendere il comando ancora più utile utilizzando varie opzioni/flag con esso per personalizzare l'elenco.
Questo articolo spiegherà, con esempi, l'uso del comando tree.
Abbiamo eseguito i comandi e le procedure menzionati in questo articolo su un sistema Ubuntu 18.04 LTS.
Come installare il comando Tree
L'installazione dell'utilità della riga di comando tree è piuttosto semplice tramite il comando apt-get. Apri la riga di comando di Ubuntu, il Terminale, tramite il Dash di sistema o la scorciatoia Ctrl+Alt+t.
Quindi inserisci il seguente comando come sudo:
$ sudo apt-get install tree
Tieni presente che solo un utente autorizzato può aggiungere, rimuovere e configurare software su Ubuntu.
Dopo che l'albero è stato installato, puoi controllare il numero di versione e anche assicurarti che l'installazione sia andata a buon fine tramite il seguente comando:
$ tree --version
Ti consigliamo di eseguire il seguente comando prima di ogni installazione in modo da poter ottenere l'ultima versione disponibile di un software presente nei repository online:
$ sudo apt-get update
Come usare il comando Albero
Qui menzioneremo alcuni esempi del comando tree in modo che tu possa non solo usarlo ma anche fare un passo avanti nel padroneggiarlo.
Uscita dell'albero di base
Questo è il modo più semplice di usare il comando tree:
$ tree
L'output mostra una struttura ad albero della directory corrente, visualizzando tutte le cartelle, le sottocartelle e i file.
Visualizza il contenuto di una directory specifica
Per elencare i file e le sottocartelle di una directory specifica anziché quella della directory corrente, puoi specificare il nome o il percorso della directory tramite la seguente sintassi dei comandi:
$ albero -a [Nome Directory/Percorso]
Esempio:
Il comando seguente elencherà tutti i file e le sottocartelle, se presenti, nella directory Immagini:
$ tree -a Pictures
Visualizza i file nascosti insieme ad altri file utilizzando Tree
Il comando tree non mostra l'elenco dei file e delle cartelle nascosti in Ubuntu. Puoi, tuttavia, utilizzare il flag "a" come segue per elencarli:
$ tree -a
I file e le cartelle nell'albero che iniziano da '.' sono quelli nascosti. Nell'output sopra, ho evidenziato una di queste voci per spiegare come appare.
Visualizza solo l'elenco delle directory tramite Tree
Se vuoi visualizzare solo l'elenco delle directory e non i file sottostanti, puoi usare il flag d con il comando tree come segue:
$ tree -d
Visualizza il prefisso del percorso completo di file e cartelle utilizzando Tree
Con f fag, puoi personalizzare il flag dell'albero per visualizzare il percorso completo come prefisso per tutti i file e l'elenco delle cartelle.
$ tree -f
Ciò è particolarmente utile quando vuoi sapere cosa esiste e dove.
Visualizza le dimensioni di file e cartelle utilizzando Tree
Con il flag s, puoi fare in modo che il comando tree stampi la dimensione, in byte, di tutti i file e le cartelle nella tua directory.
$ tree -s
Questo ti aiuta a determinare quali elementi occupano una grande quantità di spazio sul tuo sistema e a sbarazzarti di quelli non necessari.
Visualizza i permessi di lettura e scrittura di file e cartelle utilizzando Tree
Tramite il flag p nel comando del tuo albero, puoi visualizzare i permessi di lettura, scrittura ed eliminazione sui file e le cartelle elencati.
$ tree -p
Quindi, prima di voler eseguire un'operazione su un file e una cartella, puoi prima conoscere e modificare i permessi che hai su un elemento specifico.
Elenca i contenuti delle cartelle fino a un certo livello/profondità attraverso l'Albero
Invece di elencare tutti i contenuti della tua directory, puoi configurare il comando tree per visualizzare l'albero a un certo livello o profondità. Ad esempio, il livello 1 nel comando albero mostrerà solo l'elenco della cartella specificata anziché una qualsiasi delle sue sottocartelle. Ecco come utilizzare la sintassi:
albero $ -L [n]
Esempio:
Il comando seguente visualizzerà solo le sottodirectory (con l'aiuto del flag -d) della directory corrente e non l'albero ulteriormente espanso.
$ tree -d -L 1
Fai in modo che il comando Tree stampi l'elenco dei file contenenti un modello specifico
È possibile utilizzare il comando tree per elencare solo i file contenenti uno specifico modello di caratteri jolly. Ecco la sintassi per specificare il modello:
albero $ -P [[modello]*]/[*[modello]]/[[*modello*]]
Esempio:
In questo esempio, sto usando il comando tree per elencare quei file che iniziano con la parola chiave "touch":
$ tree -P touch*
Fai in modo che il comando Albero eviti di stampare alcuni nomi di file selettivi
Puoi anche usare il comando tree per elencare tutto tranne i file che contengono uno specifico pattern di caratteri jolly.
Sintassi:
albero $ -I *[parole chiave]
Esempio:
Il comando seguente elencherà tutti i file e le cartelle ad eccezione di quello contenente la parola chiave “snap”.
$ tree -d -I *snap
Stampa l'output del comando dell'albero su un file
Se vuoi stampare il risultato del comando tree su un file, puoi usare la seguente sintassi:
$ albero -o [nomefile]
Esempio:
Il comando seguente stamperà l'elenco di tutti i file e le cartelle della cartella Immagini in un file HTML denominato miofile.html
$ tree ./Pictures -o myfile.html
Aiuto albero
Il comando tree è molto più utile dell'utilizzo che abbiamo descritto. Puoi esplorare ulteriormente il comando visualizzando la guida del comando ad albero come segue:
$ tree --help
Usando i flag che abbiamo descritto e anche usando combinazioni di questi flag, puoi padroneggiare ancora di più il comando tree!