One I use all the time is this: $ pwd /Users/me/Sites/foo $ pushd . $ cd / $ pwd / $ popd $ pwd /Users/me/Sites/foo Or in English: If you're in a directory that you need to leave but you know you'll go back there in a minute, use "pushd ." to save that directory. Then go off and do whatever you need to, and when you need to return to the saved directory, use "popd" to take you straight back there.
It's really handy for scripts too. pushd/popd definitely live up to the word awesome. For interactive use zsh has an option called autopushd that automatically pushes directories you `cd` to. I never remember to use pushd so it's a nice convenience.
for i in foo bar baz; do
cd $i;
#... do something
cd ..;
done;
if "bar" doesn't exist, your cd .. will throw you off your original directory, whereas for i in foo bar baz; do
pushd $i;
#... do something
popd;
done;
you'll be guaranteed that after "popd" you're back in the right place to start a new iteration.