Platzfresser auf der Festplatte finden

Um Platzfresser auf der Fesplatte zu finden, benutze ich unter Linux gern die folgende Kommandokette. Es kann aber sein das „sort“ auf einigen Systemen die Option „-h“ nicht unterstützt. Auf meinen Mac ist das z.B. so. Das liegt an der etwas antiquierten sort-Version. Neuere Versionen unterstützen „-h“. Genauso verhält es sich mit der „du“ Option „-S“.

SORT Option

-h, --human-numeric-sort - compare human readable numbers (e.g., 2K 1G)
-r, --reverse - reverse the result of comparisons

DU Optionen

-h, --human-readable - print sizes in human readable format (e.g., 1K 234M 2G)
-S, --separate-dirs - do not include size of subdirectories

egrep Pattern
Mit dem Pattern ‚[0-9,][GM].*‘ werden nur Ergebnisse ausgegeben die eine Zahl (wahlweise mit Komma) und folgend ein M oder G haben. So werden nur Megabyte oder Gigabyte große Verzeichnisse gelistet. Bei bedarf vllt noch ein T hinzufügen ;-)

Platzfresser finden

DIR=/path/to/search
du -Sh $DIR | egrep '[0-9,][GM].*' | sort -rh | less

Output für /usr

95M /usr/lib/locale
37M /usr/lib64
26M /usr/bin
13M /usr/lib64/python2.6
11M /usr/sbin
9,5M /usr/share/backgrounds
9,0M /usr/share/cracklib
7,2M /usr/lib64/gconv
7,0M /usr/libexec/postfix
6,3M /usr/share/man/man1
6,1M /usr/share/perl5/pod
6,1M /usr/share/i18n/locales
5,7M /usr/share/doc/git-1.7.1
5,3M /usr/libexec/git-core
4,9M /usr/share/perl5/unicore
4,8M /usr/share/vim/vim72/syntax
4,1M /usr/share/hwdata
...