For the next few months, I will have a “script of the week” each week: just some tiny little scripts I’ve developed over the years that I happen to find particularly useful.
Today’s is a shell script called
sizes. It’s a fairly simplistic interface to the
du commands which just shows you all files and directories in the current directory that are larger than one megabyte.
Here’s an example of running it in my
~/Library $ sizes 2.8M Scripts 3.9M Components 5.6M Java 6.0M QuickTime 6.1M PreferencePanes 7.6M TexPackages 12M Keychains 15M Fonts 20M Preferences 36M Logs 51M Lisp 55M Emacs 86M Backups 398M Application Support 1.7G Caches
Here’s the script:
#!/bin/sh du -shx * .[a-zA-Z0-9_]* 2> /dev/null | \ egrep '^ *[0-9.]*[MG]' | sort -n > /tmp/sizes.$$ egrep '^ *[0-9.]*M' /tmp/sizes.$$ egrep '^ *[0-9.]*G' /tmp/sizes.$$ rm -f /tmp/sizes.$$