Top.Mail.Ru
Ответы
Аватар пользователя
15лет
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+2

Bat файл для пинга интернета

Подскажите как написать bat файл, который бы пинговал определенный ip, если удачно, то запускал бы указанную программу.А если нет пинговал бы каждые пять минуты, но не бесконечно а только 10 раз подряд?

Дополнен

а как в случае удачного пинга запускать указанную програмку?

По дате
По рейтингу
Аватар пользователя
Мудрец
15лет

Сначала создать файл wait.vbs (в кодировке Windows):
'************************************************
' File: Wait.vbs
' В диалоговом окне ожидает заданное количество секунд
'************************************************
Option Explicit

Dim result, begtime, msgtitle
Dim WshShell, objArgs

' We need the WshShell object.
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objArgs = WScript.Arguments ' Create object.

begtime= Time ()

if objArgs.Count >= 2 then
msgtitle=objArgs(1)
else
msgtitle="Wait"
end if

' Use the Popup method.
result = WshShell.Popup("Ожидаю окончания интервала " & objArgs(0) & _
" секунд" & vbCrLf & "Начало ожидания в " & begtime, _
objArgs(0), _
msgtitle, _
vbOKCancel + vbInformation)

if result=vbCancel then wscript.Quit(1)

'*** End

Затем в bat-файле пишешь:
set i=0
:begin
ping адрес
if errorlevel 0 (
start "C:\Program Files\WinZip\winzip32.exe"
goto :eof
)
set /A i+=1
if not %i%==10 (
cscript wait.vbs 300
goto begin
)

Или ещё проще:
for /L %%i in (1,1,10) do (
ping адрес
if errorlevel 0 (
start "C:\Program Files\WinZip\winzip32.exe"
goto :eof
)
cscript wait.vbs 300
)

Аватар пользователя
15лет

врядли такое прокатит, это ж надо как-то результат анализировать, который к тому же строкой представлен. Вообще можно конечно запустить ping.exe с выводом в файл, но врядли вы сможете проанализировать содержимое этого файла средствами cmd. Вообще - поищите в инете такую клевую статью как "Уроки BATаники"