Web & Computer
Bash - Ricerca files per dimensione
In ambienti Unix vi siete mai chiesti: "Come faccio a trovare i files più grandi per liberare velocemente spazio?". Questa è una veloce soluzione per identificarli e decidere se eliminarli o conservali.
Il comando 'find' è un coltellino svizzero estremamente versatile!
Aprite un terminale sul vostro host di interesse.
Posizionatevi nella cartella che pensate possa contenere file obsoleti e di grandi dimensioni da cercare. Normalmente le cartelle in cui effettuiamo i download da Internet sono quelle dove si accumula più sporcizia. Provate!
Il comando che dovete quindi lanciare è il seguente:
find . -printf '%s %p\n'| sort -nr | head -50
Otterrete così una lista ordinata per grandezza discendente dei 50 files più grandi trovati da questa ricerca.
Spiegazione in dettaglio
Il comando find consente di eseguire potenti e mirate ricerche per ottenere risultati veramente sorprendenti.
Nel nostro caso lanciamo il comando sulla cartella corrente (il .), utilizziamo il parametro -printf chiedendo che i risultati esposti siano la dimensione (%s) e il percorso (%p) dei files che verranno trovati. Utilizziamo un a capo (\n) per rendere leggibile il risultato in output.
Il comando a questo punto viene mandato in 'pipe' (|) al comando sort che si occupa di ordinare in maniera numerale decrescente i risultati ottenuti (-nr).
Infine usiamo un altro 'pipe' per eseguire un head che prende le prime 50 occorrenze (-50).
Godetevi il risultato!!