No Linux, eu usaria find
para localizar todos os arquivos relevantes e, em seguida, rename
:
$ find . -name "*version2*" -exec rename version2 version3 {} \;
EDIT:
Para esclarecer, conforme o comentário de @ choroba abaixo, esta solução está relacionada a renomear (1) distribuído como parte do pacote util-linux.