Cosa fa#
Visualizza ricorsivamente il contenuto di una directory in un formato grafico ad albero, arricchendo la vista con metadati del filesystem come Inode, proprietari e permessi. tree (1) - elenca il contenuto delle directory in un formato ad albero colorato.
Sintassi#
tree [opzioni] [directory]
Comandi essenziali (Metadati & Identità)#
| Comando | Flag | Significato flag | Cosa fa |
|---|---|---|---|
tree -i | -i | Inode | Stampa il numero di Inode di ogni file e directory. |
tree -p | -p | Permissions | Mostra la stringa dei permessi (es. [drwxr-xr-x]). |
tree -u | -u | User | Visualizza il nome (o UID) dell'utente proprietario. |
tree -g | -g | Group | Visualizza il nome (o GID) del gruppo proprietario. |
tree -h | -h | Human | Mostra le dimensioni dei file in formato leggibile (K, M, G). |
tree -a | -a | All | Include nella visualizzazione anche i file e le cartelle nascoste. |
tree -L 2 | -L | Level | Limita la profondità della visualizzazione ai livelli indicati. |
Opzioni "Ninja" (Filtri & Formati)#
| Flag | Nome Esteso | Effetto Pratico |
|---|---|---|
-I 'pattern' | Ignore | Esclude file/cartelle che corrispondono al pattern (es. -I 'node_modules'). |
--du | Disk Usage | Mostra la dimensione accumulata di ogni cartella (somma dei contenuti). |
--sort=size | Sort | Ordina l'output in base alla dimensione, data o nome. |
-J | JSON | Esporta l'intera struttura in formato JSON per integrazioni AI o script. |
-o file.txt | Output | Salva il risultato direttamente in un file invece di stamparlo a video. |
Rappresentazione Visiva (Esempio)#
.
└── [drwxrwxr-x barno ] Cyber
└── [drwxrwxr-x barno ] Bandit
├── [1573299 -rw-rw-r-- barno ] bandit-11.md
└── [1573305 -rw-rw-r-- barno ] bandit-12.md
^ ^ ^
Inode Permessi OwnerCombinazioni Utili#
# Analisi di sicurezza: Inode, permessi e proprietari, ignorando le cartelle git
tree -aipug -I '.git' -L 2
# Report di occupazione disco: cartelle pesanti in formato leggibile
tree --du -h -dScenario Reale#
In un'analisi forense post-compromissione, un analista SOC usa tree -aipug per mappare una directory sospetta. Questo permette di individuare immediatamente file nascosti con permessi anomali (es. SUID) o file con lo stesso Inode in posizioni diverse, segnalando la presenza di Hard Link creati dall'attaccante per mantenere la persistenza.
Dove l'ho usato#
- bandit-05 — Per navigare nella complessa gerarchia di sottocartelle del livello.
Collegato a#
- file — categoria
- system — categoria
- iam — per la gestione di proprietari e permessi
- inode-anatomy — per l'identificazione univoca dei file tramite flag
-i. - ls — alternativa non ricorsiva per la visualizzazione file.



