Переименование файлов в cmd с помощью подстановочных знаков

Я пишу файл BAT для переименования некоторых файлов. Мои файлы *.jpg где * - имя файла, и я хочу, чтобы они были *-thumb.jpg.

При попытке сделать RENAME *.jpg *-thumb.jpg мои файлы отображаются как *.jpg-thumb.jpg.

Ответ 1

Что-то вроде:

for %%f in (*.jpg) do rename "%%f" "%%~nf-thumb.jpg"

Ответ 2

Собственно, команда RENAME сама по себе может решить проблему. пока в имени есть только один .. если вы используете много ? вместо одного *.

REN *.jpg ????????????????????-thumb.*

Просто убедитесь, что число ? не меньше, чем самое длинное имя файла, которое будет переименовано.

См. Как команда Windows RENAME интерпретирует подстановочные знаки? для получения дополнительной информации.