it-swarm.com.ru

Пакетные файлы - Использование ping для проверки сетевого подключения

Используя командный файл, можно было бы сделать что-то вроде:

пинг google.com

если вернется, сделай ЭХО Ты подключен к интернету

еще вернуть ECHO Вы не подключены к интернету

10
Peter

Вы можете использовать следующий фрагмент:

@echo off
Ping www.google.de -n 1 -w 1000
if errorlevel 1 echo Not connected
13
CSchulz

Вот скрипт, который будет многократно проверять и записывать время (из системных часов) и «Интернет в автономном режиме» в файл журнала на C:\Internet.txt каждый раз, когда Интернет отключается…. К сожалению, последняя строка в журнале файл появится в конце - я не знаю, как сделать так, чтобы он появился вверху;)

Кстати: Я установил время ожидания (-w) на 20 секунд, потому что я использовал 3G-ключ (с 2G-интернетом), поэтому 20-е годы часто были единственным способом убедиться, что интернет действительно не работает или что-то еще проблема ... Не стесняйтесь изменить его на 5000 на 5 секунд или вообще удалить "-w 20000", чтобы оставить его по умолчанию.

@echo off

:START

ping -n 4 4.2.2.2 -w 20000 >nul

if %errorlevel% == 1 (
  echo Internet offline >> C:\Internet.txt
  Time /t >> C:\Internet.txt
)

Timeout /t 30
@set errorlevel = 0

GOTO START
4
jfgoodhew1

Вот скрипт, который поможет вам начать с него:

http://www.techimo.com/forum/networking-internet/73769-handy-batch-file-check-network-connectivity.html

ПРИМЕЧАНИЕ. Если ваша система не на английском языке, вам придется изменить строки в сценарии, где используется команда find для фильтрации Reply from из вывода команды ping в соответствующую строку на языке системы.

1
Ozair Kafray

Основываясь на ответе @CShulz, вот сценарий, который будет печатать «Не подключен» только тогда, когда нет подключения, иначе он будет автоматически перебирать тест каждые 30 секунд. Первый ping проверяет наличие соединения и печатает сообщение об ошибке, если есть проблема. Второй пинг добавляет 30-секундное ожидание, пингуя локальный хост.

@echo off
:loop
ping www.google.com -n 1 -w 5000 > nul
if errorlevel 1 echo Not connected
ping -n 30 127.0.0.1 > nul
goto loop
1
user
@echo off
echo Checking connection
ping -n 1 www.google.com >nul
if errorlevel 1 (
  cls
  echo Failed
  pause>nul
  exit
)

cls
echo Success!
pause>nul
exit
1
12345
@echo off
:loop
ping www.google.com -n 1 -w 5000 >NUL
if errorlevel 1 echo Not connected
goto Loop
0
TOasT