Vi siete mai chiesti come sapere lo spazio occupato da una directory ?
La risposta è il comando du la sintassi è la seguente:
du [OPTION]... [FILE]... du [OPTION]... --files0-from=F
Per visualizzare la dimensione di una directory specifica (ad esempio /tmp) usate la sintassi:
du /tmp
Il risultato dovrebbe essere (versione permettendo) simile a questo:
9 /tmp/.font-unix 27 /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap/snap-store 36 /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap 9 /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/var 9 /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr/lib 18 /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr 72 /tmp/snap-private-tmp/snap.snap-store/tmp/.snap 9 /tmp/snap-private-tmp/snap.snap-store/tmp/.X11-unix 90 /tmp/snap-private-tmp/snap.snap-store/tmp 99 /tmp/snap-private-tmp/snap.snap-store ... (omissis) 521 /tmp
Come potete notare il numero con cui si esprime lo spazio occupato non ci è molto familiare, semplificando sono il numero dei blocchi occupati dal file, la cosa è un po’ più complessa ma trattarla ora farebbe confusione.
Quello che c’è da sapere è che se vogliamo vedere la dimensione del file espresse nelle più comuni unità di misura (kb, mb, gb) tutto quello che dobbiamo fare è specificare, sulla linea di comando, il parametro -h:
du -h /tmp
Vedremo quindi qualcosa del tipo:
9,0K /tmp/.font-unix 27K /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap/snap-store 36K /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/snap 9,0K /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/var 9,0K /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr/lib 18K /tmp/snap-private-tmp/snap.snap-store/tmp/.snap/usr 72K /tmp/snap-private-tmp/snap.snap-store/tmp/.snap 9,0K /tmp/snap-private-tmp/snap.snap-store/tmp/.X11-unix 90K /tmp/snap-private-tmp/snap.snap-store/tmp 99K /tmp/snap-private-tmp/snap.snap-store ... (omissis) 521K /tmp
Se si vuole forzare un’unica unità di misura basta usare: -k
per kilobytes, -m
per megabytes.
du -k /tmp
du -m /tmp
Per vedere quale directory usa più spazio potresti usare il comando:
du -h --max-depth=1 | sort -hr
La sottodirectory più grande viene visualizata per prima, puoi incrementare la profondità delle directory da considerre con l’opzione: –max-depth
parameter.
Il comando du visualizza solo directory e sottodirectory, se volte visualizzare anche i file allora dovete usare il parametro: -a
.
du -ah /tmp
Si può inoltre specificare una o più directory a cui si vuole limitare l’analisi:
du -h dir1 dir2
Se vi piace andare subito al sodo potete visualizzare solo il totale con l’opzione: -s
.
du -sh /tmp
Avrete in output una sola linea:
521K /tmp
Ovviamente se, come detto poco fa’, specificate più di una directory sulla linea di comando avrete poi una riga per ogni totale calcolato.
Se volete, alla fine dell’elaborazione, un gran totale basta aggiungere il parametro:-c
du -csh /tmp
Si possono anche escludere dei file tramite una maschera:
du -ch --exclude='*.jpg' | grep total
il “grep total” server a visualizzare solo le righe di totali
Come sempre potete richiamare l’help completo del comando con:
man du
Ci vediamo alla prossima
Andrea