问题描述
|
使用批处理文件可以执行以下操作:
ping google.com
如果返回成功,请回声您已连接到互联网
否则返回ECHO您未连接到互联网
解决方法
您可以使用以下代码段:
@echo off
Ping www.google.de -n 1 -w 1000
if errorlevel 1 echo Not connected
, 这是一个脚本,它将反复检查,并在每次Internet脱机时将时间(从系统时钟)和\“ internet offline \”写入C:\\ Internet.txt的日志文件中。
不幸的是,日志文件中的最新行将显示在末尾-我不知道如何使它显示在顶部;)
顺便说一句:
我将等待时间(-w)设置为20秒,因为我使用的是3G加密狗(带有2G互联网),因此通常20秒通常是确定互联网是否真的出现故障或其他问题的唯一方法...随时将其更改为5000 5s,或完全删除\“-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
, 这是一个脚本,可以帮助您开始:
http://www.techimo.com/forum/networking-internet/73769-handy-batch-file-check-network-connectivity.html
注意:如果您的系统不是英语,则必须修改脚本中的行,其中使用find
命令将ping输出中的Reply from
过滤为系统语言中的相应字符串。
, @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
, 根据@CShulz的回答,这是一个脚本,仅当没有连接时才会打印“未连接”,否则它将每30秒静默循环测试。首先ping测试连接性并在出现问题时显示错误消息。第二次ping通过对本地主机执行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
, @echo off
:loop
ping www.google.com -n 1 -w 5000 >NUL
if errorlevel 1 echo Not connected
goto Loop
, echo Testing Internet Connection of google.com
@echo off
:loop
ping google.com -n 1 -w 5000 > nul
if errorlevel 1 echo %date% - %time% Not connected >> pingtestlog.txt
ping -n 30 127.0.0.1 > nul
goto loop