У меня есть большой набор файлов с именами, структурированными string_int_int_int_string.extension
, и я хотел бы переименовать их в пакетном режиме с заполнением левым нулем до 7 цифр во втором интервале.
Пример: переименуйте stringA_1_2
в stringA_1_0000002_3_stringB.jpg
stringB.jpgstringA_1_0000002_3_stringB.jpg
.
Я видел несколько полезных сообщений здесь, здесь и здесь, но не совсем этого.
Вот что у меня есть на данный момент (не работает, конечно):
dir /b *.* >temp.txt
for /f "tokens=%%1,%%2,%%3,%%4,%%5 delims=_" %x in (temp.txt) do (
setlocal enabledelayedexpansion
set PAD=000000%%k
set PAD=!PAD:~7!
ren "%%i_%%j_%%k_%%l_%%m" %%i_%%j_%PAD%_%%l_%%m
)
Я специально хочу сделать это с помощью командного файла, а не какого-либо другого языка или инструмента. (Я знаю о различных инструментах переименования.)
Любая помощь приветствуется!