CMD/BAT - Запуск cmd по очереди.

Ответить
Аватара пользователя
krasavchik0

CMD/BAT - Запуск cmd по очереди.

Сообщение krasavchik0 »

написал строчку



Код:

Код: Выделить всё

for /f "tokens=2" %%F in ('tasklist  /nh /FI "IMAGENAME eq cmd.exe" ^| sort /+27') do set FileName1=%%F
echo %FileName1%

Цель такая запускаем несколько cmd одновременно через планировщик.

Дальше вначале скрипта спрашиваем ид процессов cmd. И если текущий cmd минимальный имеет ид то выполняем дальше. Если нет то проверяем через хх снова и пока не дойдет и очередь до этого cmd.



Но столкнулся с проблемой, что данная команда видит еще какой то процесс cmd. То есть команда выше выводит на 1 ид больше, чем команда



Код:

Код: Выделить всё

tasklist  /nh /FI "IMAGENAME eq cmd.exe" ^| sort /+27

Кто сможет помочь написать проверку по алгоритму выше? И что делать с фантомным лишним ИД ? Спасибо.
Аватара пользователя
iglezz

Re: CMD/BAT - Запуск cmd по очереди.

Сообщение iglezz »

Это не "еще какой то процесс cmd", это вызванный в команде FOR %comspec% /c tasklist /nh /FI "IMAGENAME eq cmd.exe" | sort /+27



По-простому можно загнать вывод во временный файл

tasklist /nh /FI "IMAGENAME eq cmd.exe" | sort /+27 >tempfile

а затем его распарсить в FOR
Ответить

Вернуться в «Скриптовые языки администрирования Windows»