conv
Conv is a utility similar to "make" -- it uses a set of rules to transform files via program execution. Conv is considerably simpler than make, though. It doesn't do any fancy recursive inferencing or functions to manipulate lists. It does, however, make it easy to batch convert files with simple rules. It also supports spaces in filenames, a case where I am putting it nicely by saying that make fails it.
If you have a simple Convfile like so:
VORBIS_Q = 5 flac => ogg : oggenc -q $VORBIS_Q $<
Then it's easy to convert foo.flac to
foo.ogg with this simple command:
$ conv foo.ogg
Full documentation is in the README.