Advancing in the Bash Shell
http://samrowe.com/wordpress/advancing-in-the-bash-shell/