There are loads of possibilities, starting with scripting your own. There are innumerable past threads on the subject of bulk renaming, so I suggest starting with a search.
I've always liked
krename in gui personally, but for cli use, I often use
prename ("perl rename", which comes standard with the debian-based
perl package).
One choice you might be interested in that isn't mentioned very much is
qmv, part of the
renameutils package. Instead of being a traditional renaming tool, it takes the filenames you give it and loads them into a text editor. There you can make whatever alterations you want, and when you save and exit, it will rename them.
It's particularly useful if you know how to use a real power editor like
vim.