Мне нужно, чтобы Windows CMD перебирала папки в каталоге и выполняла команду для преобразования webp в png для каждой из них.

Я всегда использую эту командную строку для преобразования .webp в .png:

      for %f in (*.webp) do dwebp.exe  "%f" -o "%~nf.png"

Работает как чудо для отдельных папок, но теперь у меня есть несколько файлов .webp, которые мне нужно преобразовать внутри нескольких папок в одном каталоге, пример:

      "C:\IMG\randomname"
"C:\IMG\randomname1"
"C:\IMG\randomname2"

И так далее... Мне нужна помощь, как это сделать.

Заранее спасибо.

1 ответ

1. Добавить/R Повтор ,

2. Заменить вывод-o "%~nf.png"файл в-o "%~dpnf.png"


      for /R %f in (*.webp) do dwebp.exe  "%f" -o "%~dpnf.png"
  • Или...
      for /R "C:\IMG" %f in (*.webp) do dwebp.exe  "%f" -o "%~dpnf.png"

Подробнее циклическое перебор файлов (подпапки Recurse):о цикле For и цикле For /R

Другие вопросы по тегам