使用批处理文件可以执行以下操作:
ping google.com
如果返回成功,则ECHO您已连接到互联网
否则返回ECHO您未连接到互联网
答案 0 :(得分:13)
您可以使用以下代码段:
@echo off
Ping www.google.de -n 1 -w 1000
if errorlevel 1 echo Not connected
答案 1 :(得分:4)
这是一个脚本,每次互联网脱机时,都会反复检查并将时间(从系统时钟)和“互联网离线”写入C:\ Internet.txt的日志文件。 不幸的是,日志文件中的最新行将出现在最后 - 我不知道如何使它出现在顶部;)
顺便说一句: 我将等待时间(-w)设置为20秒,因为我使用的是3G加密狗(带有2G互联网),所以20s通常是确定互联网是否真的失效或其他问题的唯一方法...您可以随意将其更改为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
答案 2 :(得分:1)
这是一个帮助您入手的脚本:
注意:如果您的系统不是英文,则必须修改脚本中使用find
命令从ping的输出中过滤Reply from
到相应的字符串中的行。系统的语言。
答案 3 :(得分:1)
@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
答案 4 :(得分:1)
基于@CShulz的答案,这里有一个'打印'的脚本“只有在没有连接时才会连接”,否则它将每隔30秒静默循环测试一次。第一次ping测试连接&如果出现问题,则会输出错误消息。第二次ping通过ping localhost来增加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
答案 5 :(得分:0)
@echo off
:loop
ping www.google.com -n 1 -w 5000 >NUL
if errorlevel 1 echo Not connected
goto Loop
答案 6 :(得分:0)
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
答案 7 :(得分:0)
我了解这是一个老话题,但这还是我的贡献。
@echo off
TITLE Network Connection Watchdog
:: Use Windows "Task Scheduler".
:: Set to run at "Startup" with a delay and interval of your choice.
:: Remember to tick "Run with highest privileges".
:: Last command will only be executed if all pings fail.
set /a pc=0
set /a total=0
:: Your preferences
set if="Wi-fi" &:: Find your interface name with [netsh interface show interface].
set ip=192.168.0.1
set /a pt=10 &:: Set amount of pings to be executed.
:loop
set /a pc+=1
ping %ip% -n 1 -w 100 | find "TTL=" >NUL 2>&1
for /f %%a in ('echo %errorlevel%') do set p%pc%=%%a
set /a total+=p%pc%
if not %pc%==%pt% goto loop
if not %total%==%pt% (
goto eof
) else (
netsh interface set interface %if% disable
ping localhost -n 5 >NUL 2>&1
netsh interface set interface %if% enable
)
:eof
exit
答案 8 :(得分:0)
这个基本脚本可以持续 ping google.com 并测试您的互联网连接。脚本将循环运行,直到您关闭窗口。
@echo off
:loop
ping www.google.com -n 1 -w 5000 > null
if not errorlevel 1 set msg=Your are connected with internet...
if errorlevel 1 set msg=No Internet...
cls
color 0a
echo %msg%
goto loop