#windows #batch-file
#Windows #пакетный файл
Вопрос:
Я создал пакетный скрипт, который выглядит следующим образом:
set F=Project_idem.exe
set I=1
set M=solution
set NSET=(3 20 1)
FOR /L %%N IN %NSET% DO ( START "idem" %F% -mode %M% -iterations %I% %%N )
Что я хочу сделать, так это запустить Project_idem.exe в окне с именем «idem», где последним значением является целое число в 3,4, …, 20. Когда я запускаю файл, он выводит только строки? Вот так:
FOR /L %N IN (3 20 1) DO (START "idem" Project_idem.exe -mode solution -iterations 1 %N )
И это не выполняет фактические итерации? Как мне заставить его запускать итерации? Операционная система XP.
Ок, решено… У меня был размер шага в неправильном месте. Это должно быть (3,1,20). Спасибо!!! (Не могу поверить, что я потратил на это час: D )
Комментарии:
1. Обычно я не помещаю команды ‘do’ в квадратные скобки — это разрешено?
2. Отлично! Вы должны щелкнуть галочку рядом с ответом Дэвида ниже, поскольку это решение.
Ответ №1:
На экране справки похоже, что это должно быть (3 1 20) вместо (3 20 1).
Комментарии:
1. тот же ответ, что и у меня, быстрее, заслуживает 1
Ответ №2:
Попробуйте отлаживать по одной проблеме за раз.
Смотрите HELP FOR
и попробуйте в командной строке,
FOR /L %a IN (3 20 1) DO @ECHO %a
и сравните с
FOR /L %a IN (3 1 20) DO @ECHO %a
Этот простой тест должен помочь вам начать.