У меня есть 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?

Благодарность!

4
Mark Miner 23 Июн 2014 в 14:18

2 ответа

Лучший ответ

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

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
Community 20 Июн 2020 в 12:12
Похоже, это не работает. Возникла проблема с "set var =% 1" - синтаксическая ошибка. Я попытался изменить его на "set / a var = var + 1". Он работает, но работает только до 000008 и сбрасывается до 000000.
 – 
Mark Miner
23 Июн 2014 в 15:23
1
Попробуйте еще раз с двумя пакетными файлами
 – 
Monacraft
23 Июн 2014 в 15:33
@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
0
Monacraft 23 Июн 2014 в 14:37