Выключить компьютер по завершению произвольной программы
Задача:
по завершению некоторого процесса (имя которого известно) выключить компьютер.
Условия:
использовать только встроенные средства Windows (без скачивания/установки сторонних программ!)
Решение:
Пакетный файл.
@echo off rem процесс с каким именем ждать set task=calc.exe rem интервал отслеживания в секундах set seconds=5 echo Waiting for termination of %task%: :loop tasklist /nh /fi "IMAGENAME eq %task%" | findstr /C:"%task%" > nul goto label%errorlevel% :label1 echo Done. Shutting down... Shutdown /s /f exit :label0 echo Still running... timeout /t %seconds% > nul goto loop
Как проверить и как пользоваться:
Для тестирования сохраните приведённый код под именем shutdown-on-app-close.cmd
, запустите Windows-овский калькулятор, затем только что полученный .cmd-файл. Результат: пока калькулятор работает, эта программа с интервалом в 5 секунд наблюдает за ним, стоит вам закрыть калькулятор — компьютер выключится. Для изменения имени наблюдаемого процесса и интервала проверки «запущенности» :) процесса измените две переменные в начале файла, их имена соответственно task и seconds.
Поделись с друзьями: