Se si gestisce un VPS o un server dedicato può essere fondamentale trovare con rapidità i files che occupano più spazio di quello che devono. Cancellare questa tipologia di files può essere utile per liberare lo spazio su disco.

Di seguito due comandi per me fondamentali che possono essere utili a tale scopo.

NB: Io uso prettamente CentOS quindi i comandi saranno specifici per questo sistema operativo.

Il primo comando è quello per trovare files più grandi di X dimensione.

Il comando è il seguente

find {directory di ricerca} -type f -size +{dimensione file}k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

spiego cosa indica.

Con il comando find si effettua la ricerca vera e propria.

Al posto di {directory di ricerca} si può mettere il punto “.” (senza virgolette), per indicare la ricerca nella directory attuale oppure un percorso specific.

Con -type f si indica la ricerca tra i soli files.

+{dimensione file}k indica la dimensione dei files in kb. Ad esempio mettendo 100000k cercheremo files più grandi di 100MB.

-exec ls -lh {} \; indica di listare l’elenco dei files trovati

awk ‘{ print $9 “: ” $5 }’  indica che l’ordine deve essere strutturato nella forma ./directory/nomefile.ext: dimensione

Se si vuole, invece, trovare i 10 files e directories più grandi basta usare il comando

du -hsx * | sort -rh | head -10

dove

du: mostra la lista dei files
-h: mostra la dimensione in formato “human readable” (ad esempio 1k, 10M, 1G ecc)
-s: mostra solo il totale di tutto.
-x: gira nelle diverse directory
sort: ordina i risultati
-r: mette i risultati in ordine decrescente
-h: ordine in formato leggibile per le persone
-10: mostra i primi 10 risultati