Запуск .jar несколько раз с разными параметрами

#batch-file

#пакетный файл

Вопрос:

У меня есть 2186 файлов jpeg, которые мне нужно преобразовать в другой тип файла с помощью определенной программы. К сожалению, я очень плох, когда дело доходит до пакетных файлов, но вот что у меня есть на данный момент:

 java -jar -Xmx1024m convert.jar -d2 -h64 -w64 -s Untitled_000000.jpeg output_000000.schematic
  

Для этого требуется файл Untitled_000000.jpeg и преобразует его в output_000000.schematic . Как бы мне обойти, чтобы он автоматически конвертировал 2186 файлов, вплоть до output_002185.schematic?

Спасибо!

Ответ №1:

Попробуйте это:

Main.bat

 @echo off
for /l %%a in (0, 1, 2185) do (Pad.bat "%%a")
  

И в том же каталоге:

Pad.bat

 set var=%1
:loop
set var=0%var%
if "%var:~5,1%"=="" goto :loop

java -jar -Xmx1024m convert.jar -d2 -h64 -w64 -s Untitled_%var%.jpeg output_%var%.schematic
  

И это должно сработать для вас. (Я протестировал его)

Комментарии:

1. Похоже, это не работает. Существует проблема с «set var =% 1» — синтаксическая ошибка. Я попытался изменить его на «set / a var = var 1», Он работает, но работает только до 000008 и сбрасывается до 000000.

2. повторите попытку с двумя пакетными файлами spereate

Ответ №2:

 @echo off


setlocal enableDelayedExpansion
pushd C:pics_dir
for /l %%L in (Untitled_*.jpeg) do (
    set "file_name=%%~nL"
    set "current_number=!file_name:~9!"
    java -jar -Xmx1024m c:convert.jar -d2 -h64 -w64 -s "%%~L" output_!current_number!.schematic
)

endlocal