Сложность в том, что нужно выделить из имени файла его номер и добавить нужное количество нулей.
Выделить номер можно загнав имя файла в цикл for /f и разделив его на токены. Из токенов нас интересует только 1 токен (номер):
for %%a in (*) do if /i "%%~xa"==".pdf" for /f "tokens=1,* delims=." %%b in (%%a) do (
echo %%b
)
Во внутреннем цикле в переменной %%b будет номер файла.
Для того чтобы добавить нужное количество нулей, нужно знать длину номера.
Функцию определения длины строки возьмите на
сером форуме.
Сам ею не однократно пользовался.
Ну а дальше просто добавьте впереди 3 нуля к имени файла, а потом обрежте лишние. Команда set умеет выделять подстроки.
Для справки:
for /?
set /?