Makefiles can be great for this sort of thing. Over time you build up a really nice library of shell commands and it's trivial to organize them into a DAG of dependent steps. Lack of makefiles is a strong reason to avoid windows dev machines like the plague...(IMHO)