Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Старожил


Сообщения: 415
Благодарности: 257

Профиль | Отправить PM | Цитировать


Не дождался от вас ответа, набросал вот такой скрипт:
Код: Выделить весь код
@Echo Off
Title Ping2Host

:: Ведение лога
Set Logging=true
:: Таймайт в секундах
Set Timeout=15

Echo.
Set /P Host=  Enter IP or hostname: ^> 
Cls&Set Total=0&Set Succes=0&Set Fail=0&Set Status=Not checked yet&Set StartTime=[%date% - %time:~-0,8%]
Set /A Sleep=(Timeout-1)*1000
If %Logging%==true (Set LogFile=%~n0.log) Else (Set LogFile=nul)
:ShowStats
Call :Stats
.\bin\nircmdc.exe wait %Sleep%
Ping -n 1 -w 1000 -l 1024 %Host%>nul
If %ErrorLevel% GTR 0 (
Set /A Fail+=1
Set Status=Offline
Echo %date% - %time:~-0,8% ^>^> %Host% is offline>>%LogFile%
) Else (
Set /A Succes+=1
Set Status=Online
Echo %date% - %time:~-0,8% ^>^> %Host% is active>>%LogFile%
)
GoTo ShowStats

:Stats
Cls
Echo.
Echo  Started at: %StartTime%
Echo.
Echo  Target: %Host%
Echo  Online: %Succes% times, Offline: %Fail% times
Echo  Current status: [%date% - %time:~-0,8%] - %Status%
Echo.
Exit /B
Для его работы нужна консольная версия утилиты NirCmd, поместите файл nircmdc.exe в директорию bin в том же месте, где располагается скрипт.

Отправлено: 13:53, 12-07-2011 | #3