Войти

Показать полную графическую версию : рестарт и диагностика процесса (игрового сервера)


lekraft
04-09-2012, 22:54
Имеется консоль с именем ivmp-srv.exe (работающая в cmd)
Имеется bat. на рестарт и диагностику этого процесса.
Параллельно с ним работает bat. на перезагрузку раз в 24 часа.
ping localhost разделяет одновременность выполнения команд.

@echo off chcp 1251 >nul
echo Запуск скрипта диагностики. Выполняется загрузка, ожидайте...
ping 127.0.0.1 -n 30 >nul
:loop
ping 127.0.0.1 -n 5 >nul
echo Обнаружение сервера, диагностика...
ping 127.0.0.1 -n 5 >nul
chcp 866 >nul
for /f %%i in ('%windir%/system32/tasklist /FI "IMAGENAME eq ivmp-svr.exe"') do goto :m1
chcp 1251 >nul ping 127.0.0.1 -n 3 >nul
echo Сервер отключился, запускаем сервер.
start "IVMP-SRV" "C:\IVMP SERVER\ADMS\ivmp-svr"
ping 127.0.0.1 -n 3 >nul
echo Сервис работает, повторная проверка через 30 секунд.
ping 127.0.0.1 -n 30 >nul
goto:loop
:m1
chcp 1251 >nul
echo Сервис работает, повторная проверка через 30 секунд.
ping 127.0.0.1 -n 30 >nul
goto:loop

Вопрос в следующем, нужен bat. с таким функционалом:
:res
1.Переходит на консоль ivmp-srv.exe
2.Пишет в ней /all Перезагрузка через 10 секунд.
3.Отсчитывает 10 секунд.
4.Пишет /restart.
5.Возвращается в свою консоль.
6.Убивает процесс.
7.Запускает процесс.
8.goto:res

Консоль ivmp-srv.exe подключена к mysql и для полноценного рестарта нужно сохранить позиции в БД, но автоматизировать возможности нет.
Очень надеюсь на ваши советы и помощь. Заранее спасибо!




© OSzone.net 2001-2012