Как в .bat файле узнать, пингуется ли сайт?
Не проще ли попытаться установить соединение?
---
...Я работаю антинаучным аферистом...
telnet'ом, что ли ? пусть, например, им. Тогда как решается эта задачка ?
ping site.ru -n 1 | find "TTL=" > nul
if errorlevel 1 (
echo Unreachable
) else (
echo Online!
)
hint:
1) проверка на отсутствие "request time out" не спасает от "DNS-error"
2) проверка на присутствие "Reply from" не спасает от "Reply from <gw>: destination host unreachable"
3) АФАИК, TTL пишется одинаково в русской и английской винде и присутствует только в строках ответа.
---
...Я работаю антинаучным аферистом...
но можно попробовать так:
ping site.ru -n 1 > nul
if errorlevel 1 (
echo Unreachable
) else (
echo Online!
)
здорово! спасибо!
и так работает
Очень ненадёжно.
Слишком часты случаи, когда первый пакет пропадает,
а затем всё идёт с хорошим откликом.
---
...Я работаю антинаучным аферистом...
Бывают, например, извращения, когда icmp фильтруется,
что никак не мешает устанавливать соединения tcp.
---
...Я работаю антинаучным аферистом...
Слишком часты случаи, когда первый пакет пропадает,-n 2
а затем всё идёт с хорошим откликом.
![](/images/graemlins/wink.gif)
об этом я в курсе. поэтому в заголовке написал именно "пингуется ли сайт", а не "доступен ли сайт"
Кстати об "exit code".
В операционной системе "ping returns 0 on success (the host is alive
and non-zero if the arguments are incorrect or the host is not responding."
Справедливо ли это на целевой машине, я не знаю.
Подробнее, что подразумевается под "the host is alive", можно узнать по исходникам.
---
...Я работаю...
Я бы ставил не менее пяти.Я к тому, что это не меняет кода. Просто параметр.
Конкретное число будет зависеть от задачи.
Кстати об "exit code".т.е. есил из 5-ти один вернется, значит exit-code=0?
В операционной системе "ping returns 0 on success (the host is alive
Это никсах или ты про винду?
Ты никогда до конца не дочитываешь?
---
...Я работаю...
только твои фразы имеют как минимум 2 смысла.
Расскажи, как ещё можно это понимать.
---
...Я работаю...
об этом я в курсе. поэтому в заголовке написал именно "пингуется ли сайт", а не "доступен ли сайт"Ага. В таком случае отвечаю: " Веб-сайт, или просто сайт (англ. website, от web — паутина, «веб» и site — «место») — это совокупность веб-страниц, то есть документов HTML/XHTML, доступных в интернете через протоколы HTTP/HTTPS".
Таким образом очевидно, что набор страничек пинговаться не может.
это уже филология
---
...Я работаю...
Оставить комментарий
p_serge
как это сделать? чтобы можно было с помощью IF потом что-то сделать в зависимости от того, пингуется ли интернет-ресурс.следующий способ не приветствуется: ping site.ru > ping.log , а дальше разбор ping.log на присутствие Request timed out