批处理文件-使用ping测试网络连接

问题描述

| 使用批处理文件可以执行以下操作: 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