logo

Comando Tree in Linux con esempi

Nei sistemi UNIX/LINUX, così come in MS-DOS e Microsoft Windows, l'albero è un programma ricorsivo di elenco di directory che produce un elenco di file con rientro profondo. Senza argomenti, l'albero elenca i file nella directory corrente. Quando vengono forniti argomenti di directory, l'albero elenca a turno tutti i file o le directory trovati nelle directory specificate.

Mostra le directory come rami e i file come foglie, il che rende semplice per l'utente visualizzare l'organizzazione di file e directory all'interno di un determinato percorso.

Installazione del comando `tree` in Linux

Per impostazione predefinita, il comando tree non è installato. Digitare il seguente comando per installare lo stesso



Installazione in RHEL / CentOS / Fedora Linux

Versione inferiore o uguale a Rhel8

sudo yum install tree>

Nota nella versione successiva a RHEL 8, è necessario il comando dnf.
Ad esempio, nell'installazione in RHEL 9.

sudo dnf install tree>

sudo dnf installa l'albero

Installazione in Debian/Mint/Ubuntu Linux

sudo apt-get install tree>

sudo apt-get albero di installazione

Installazione in Apple OS X

brew install tree>

Sintassi di base del comando Tree in Linux

tree [options]>

Se vogliamo visualizzare la struttura delle directory utilizziamo il semplice comando `tree` senza aggiungere alcuna opzione.

albero

Qui il comando `tree` mostrerà la struttura della directory, a partire dalla directory corrente.

Opzioni disponibili nel comando `tree` in Linux

Opzioni

Descrizione
-aiuto -aiuto
-versione

Restituisce la versione dell'albero.

elenco vuoto java
'-a' o '-all'.

Include file e directory nascosti nell'albero.

`-d` o `–dirs-only`

Elenca solo le directory.

`-f` o `–percorso completo`

Stampa il prefisso del percorso completo per ciascun file.

`-i` o `–ignore-case`

Ignora maiuscole e minuscole durante l'ordinamento dei nomi dei file.

-X

Rimani solo sul file system corrente, come con find -xdev.

-IO

Non elencare i file che corrispondono al modello di caratteri jolly.

'-p' o '–prune'.

Omette la directory specificata dall'albero.

–limitefile #

Non scendere nelle directory che contengono più di # voci.

-T

Ordina l'output in base all'ora dell'ultima modifica anziché in ordine alfabetico.

–nessun rapporto

Omette la stampa del rapporto su file e directory alla fine dell'elenco dell'albero.

-S

Stampa la dimensione di ciascun file insieme al nome.

-In

Stampa il nome utente, o l'UID # se non è disponibile alcun nome utente, del file.

-G

Stampa il nome del gruppo o il GID # se non è disponibile alcun nome del gruppo del file

-D

Stampa la data dell'ultima modifica per il file elencato.

–inode

Stampa il numero di inode del file o della directory

-dispositivo

Stampa il numero del dispositivo a cui appartiene il file o la directory

-F

Aggiungi un `/’ per le directory, un `=’ per i file socket, un `*' per i file eseguibili e un `|' per i FIFO, come per ls -F

-Q

Stampa i caratteri non stampabili nei nomi dei file come punti interrogativi invece della notazione carota predefinita.

-N

Stampa i caratteri non stampabili così come sono invece della notazione carota predefinita.

-R

Ordina l'output in ordine alfabetico inverso.

–dirfirst

Elenca le directory prima dei file.

-N

Disattiva sempre la colorazione, sovrascritta dall'opzione -C.

-C

Attiva sempre la colorazione, utilizzando i colori predefiniti incorporati se la variabile di ambiente LS_COLORS non è impostata. Utile per colorare l'output su una pipe.

-UN

Attiva la modifica grafica delle linee ANSI durante la stampa delle linee di rientro.

-S

Attiva la grafica della linea ASCII (utile quando si utilizzano i caratteri in modalità console Linux). Questa opzione è ora equivalente a `–charset=IBM437′ e verrà eventualmente svalutata.

-Livello L

Profondità massima di visualizzazione dell'albero delle directory.

css per allineare le immagini
-R

Attraversa ricorsivamente le directory di ogni livello dell'albero (vedi opzione -L), ed in ciascuna di esse esegui nuovamente l'albero aggiungendo `-o 00Tree.html' come nuova opzione.

-H baseHREF

Attiva l'output HTML, inclusi i riferimenti HTTP. Utile per i siti FTP. baseHREF fornisce la posizione ftp di base quando si utilizza l'output HTML. Cioè, la directory locale può essere `/local/ftp/pub', ma deve essere referenziata come `ftp://nome-host.organizzazione.dominio/pub' (baseHREF dovrebbe essere `ftp://nome-host.organizzazione .dominio'). Suggerimento: non utilizzare linee ANSI con questa opzione e non fornire più di una directory nell'elenco delle directory. Se desideri utilizzare i colori tramite il foglio di stile CSS, utilizza l'opzione -C oltre a questa opzione per forzare l'output a colori.

-T titolo

Imposta il titolo e la stringa dell'intestazione H1 nella modalità di output HTML.

–set di caratteri set di caratteri

Imposta il set di caratteri da utilizzare durante l'output HTML e per il disegno di linee.

–nessun collegamento

Disattiva i collegamenti ipertestuali nell'output HTML.

-o nome del file Invia l'output al nome del file.

Esempi

Visualizza la gerarchia ad albero di una directory

tree -a ./GFG>

albero -a ./GFG

Elenca i file con il modello inserito

tree -P sample* .>

albero -P campione* .

Elenca le directory che hanno un numero maggiore di 'N' di file/directory

tree --filelimit 3 ./GFG>

albero –filelimit 3 ./GFG

Elenca i file con i relativi permessi.

tree -p ./GFG>

albero -p ./GFG

Stampa il numero del dispositivo a cui appartiene il file o la directory.

tree --device ./GFG>

albero –dispositivo ./GFG

Stampa l'output in base all'ora dell'ultima modifica anziché in ordine alfabetico.

tree -t ./GFG>

albero -t ./GFG

Conclusione

In questo articolo abbiamo studiato il comando `tree` in Linux che è un potente strumento per visualizzare la struttura delle directory. Consente inoltre all'utente di visualizzare la gerarchia di file e directory, compresi quelli nascosti, ordinando l'output in base a vari criteri, inoltre filtra i file utilizzando modelli e genera output HTML. Nel complesso, possiamo che sia uno strumento molto utile.