Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Отслеживание и перезапуск нескольких файлов в одной программе (http://forum.oszone.net/showthread.php?t=347987)

iezekiil 14-02-2021 20:10 2950065

Отслеживание и перезапуск нескольких файлов в одной программе
 
Здравствуйте! Помогите пожалуйста написать .bat файл проверяющий запуск N файлов, например *.py, в диспетчере задач. Если хотя бы один файл закрывается, то нужно закрыть все и запустить все заново. Например, есть файлы 1.py, 2.py, 3.py, все они запускаются в одном приложении python.exe и работают бесконечно (там бесконечные циклы). Но, в случае ошибки один из них может закрыться и тогда в идеале нужно перезапустить именно этот файл, но в крайнем случае можно и просто убить все остальные и запустить их заново.

Iska 14-02-2021 20:18 2950066

iezekiil, зачем писать сие на пакетных файлах, когда есть Python?! Из-под него организуйте и запуск скриптов, и контроль исполнения.

alpap 15-02-2021 02:21 2950102

Цитата:

Цитата iezekiil
Если хотя бы один файл закрывается, то нужно закрыть все »

ой непросто это на cmd и ненадежно и хлопотно и затратно по нагрузке на процессор
(Мониторим калькулятор, если пропал, закроется и блокнот, если делать на большее количество процессов добавляем через & еще один taskkill /f /im "%p3%" и т.д.)
Код:

@echo off
set "p1=calc.exe"
set "p2=notepad.exe"

cmd /c for /l %%# in () do @tasklist /fi "imagename eq %p1%"^|findstr /v :^|^| (taskkill /f /im "%p2%"^& exit /b)^&^>nul timeout /t 1 /nobreak
pause



Время: 08:48.

Время: 08:48.
© OSzone.net 2001-