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

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

venuko 12-07-2011 12:45 1711775

Ping на любой хост каждые 15 секунд
 
Ребята, подскажите синтаксис батника чтобы он пинговал каждые 15 секунд к примеру mail.ru. И как его можно запускать раз в 15 секунд в Windows XP Pro SP3 ?

Anonymоus 12-07-2011 13:10 1711795

А ответ от хоста важен, т.е. успешно пропинговало, или нет?

Anonymоus 12-07-2011 13:53 1711825

Не дождался от вас ответа, набросал вот такой скрипт:
Код:

@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 в том же месте, где располагается скрипт.

venuko 12-07-2011 22:42 1712144

Цитата:

Цитата Anonymоus
А ответ от хоста важен, т.е. успешно пропинговало, или нет? »


ответ не обязателен.

А этот скрипт сохранить в файл с расширением bat и его запускать той консольной утилитой?

Цитата:

Цитата Anonymоus
Для его работы нужна консольная версия утилиты NirCmd, поместите файл nircmdc.exe в директорию bin в том же месте, где располагается скрипт. »

и как пользоваться? все сделал как написали, как скрипт будет запускаться каждые 15 секунд?

запустил сам батник, ввел хост, пишет не найден

Anonymоus 13-07-2011 05:38 1712233

Пользоваться очень просто - скопировать код скрипта в текстовый файл с расширением .bat, рядом с файлом скрипта создать директорию bin, куда положить файл nircmdc.exe из скачанного архива.
Запустить сам скрипт двойным кликом по нему (как вы обычно запускаете любую другую программу), после чего вы увидите что-то вроде этого, небольшая статистика:



Так же, скрипт ведет лог успешных\неуспешных пингов, ведение лога можно отключить, изменив значение строки Set Logging=true на false. Таймаут между пингами в секундах устанавливается значением переменной Timeout чуть ниже.


Время: 03:56.

Время: 03:56.
© OSzone.net 2001-