Используя командный файл, можно было бы сделать что-то вроде:
ping google.com
если возвращение успеха ECHO Вы подключены к Интернету
else return ECHO Вы не подключены к Интернету
Используя командный файл, можно было бы сделать что-то вроде:
ping google.com
если возвращение успеха ECHO Вы подключены к Интернету
else return ECHO Вы не подключены к Интернету
Вы можете использовать следующий фрагмент:
@echo off
Ping www.google.de -n 1 -w 1000
if errorlevel 1 echo Not connected
Здесь script, который будет многократно проверять и записывать время (из системных часов) и "Интернет в автономном режиме" в файл журнала в C:\Internet.txt каждый раз, когда интернет переходит в автономный режим. К сожалению, последняя строка в файле журнала появится в конце - я не знаю, как это сделать вверху;)
BTW: Я установил время ожидания (-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
Вот script, чтобы помочь вам начать с него:
ПРИМЕЧАНИЕ. Если ваша система не находится на английском языке, вам нужно будет изменить строки в script, где find
используется для фильтрации Reply from
с вывода ping на соответствующую строку на системном языке.
@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
Основываясь на ответе от @CSulz, здесь script, который будет печатать "Не подключен" только тогда, когда нет соединения, иначе он будет прокручивать тест через каждые 30 секунд. Первые тесты ping для подключения и распечатывают сообщение об ошибке, если есть проблема. Второй пинг добавляет 30 секунд ожидания, пинговая localhost.
@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
@echo off
:loop
ping www.google.com -n 1 -w 5000 >NUL
if errorlevel 1 echo Not connected
goto Loop