|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Закрытие процесса при перегрузке процессора |
|
CMD/BAT - Закрытие процесса при перегрузке процессора
|
Новый участник Сообщения: 2 |
Я в батниках ватник.. На просторах этого форума нашёл следующий код
Данный код выводит загрузку процессора в процентах. Мне нужно, чтобы проверка процессора происходила раз в 10 секунд и при загрузке процессора больше чем на 80% происходило убийство определенного процесса (taskkill /f /im cmd.exe) |
|
Отправлено: 18:40, 09-06-2021 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать на загрузку процессора влияет очень много факторов и это не выход из положения, особенно в подобном случае, а именно:
-приведенный код написан на batch и запускается в окне процесса cmd.exe -если будет перегрузка мы убьем этот процесс и более уже не сможем контролировать ситуацию - приехали надо смотреть какой ИМЕННО процесс (возможно запускаемый вот пара кодов на bat, но которые конечно не будут убивать себя. а нацелены на конкретное прожорливое приложение :: Перезапуск процесса, если потребляет менее 20Мб памяти @echo off set "pr=programma.exe" set "mb=20000" cmd/c for /l %%# in () do tasklist /fi "imagename eq %pr%" /fi "memusage lt %mb%"^&^& (^>nul 2^>^&1 taskkill /f /im "%pr%"^& start "" "%pr%"^& exit/b)^& ^>nul timeout /t 1 /nobreak pause :: Завершить все одноименные процессы, если сумма занятой ими памяти превышает 120Мб @echo off set "spr=calc.exe" set "sm=120000" for /f "tokens=2 delims=:" %%a in ('tasklist /fi "imagename eq %spr%" /fo list') do set "m=%%a" for /f "delims=" %%a in ('"(for %%a in (%m:~0,-3%) do @<nul set /p=%%a)& echo:"') do if %%a gtr %sm% taskkill /f /im %spr% pause |
Отправлено: 01:49, 10-06-2021 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Скорее всего, я не корректно описал задачу. Мне нужно, чтобы при превышении порога загрузки процессора закрывалась определённая программа. В скобках taskkill cmd я написал для примера..
То есть мне нужно: if загрузка процессора меньше 80%, else ждём 10 секунд и проверяем снова, но if загрузка процессора >80%, то taskkill /f /im %process% и exit |
Последний раз редактировалось 1S1N, 10-06-2021 в 14:33. Отправлено: 13:40, 10-06-2021 | #3 |
fascinating rhythm Сообщения: 6626
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 15:38, 10-06-2021 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - Завершение процесса при обнаружении другого процесса | infoman1@vk | Скриптовые языки администрирования Windows | 3 | 01-02-2018 15:27 | |
CMD/BAT - Закрытие окна или процесса в пакетном файле | Спаситель | Скриптовые языки администрирования Windows | 0 | 01-09-2015 09:12 | |
CMD/BAT - [решено] закрытие процесса определенного пользователя | Ttsume | Скриптовые языки администрирования Windows | 2 | 06-02-2014 20:13 | |
CMD/BAT - [решено] проверка на активность и закрытие процесса | 43Stealers | Скриптовые языки администрирования Windows | 3 | 10-10-2010 13:13 | |
Разное - Точка восстановления Системы пропадает при перегрузке | brasilez2010 | Microsoft Windows Vista | 11 | 30-12-2009 09:50 |
|