Em um shell POSIX (por exemplo, bash), você pode executar
for i in *.jpg ; do
mv $i 'printf '%04d' ${i%.jpg}'.jpg
done
Isso renomeia todos os arquivos X.jpg no diretório atual para quatro dígitos com o prefixo zero. Note que ele assume que todos os arquivos * .jpg têm números apenas em sua parte base.