校园网是真滴垃圾呀,20M网线的拨号上网,网速慢还经常断开,每次开机得手动连接,很麻烦,就尝试用CMD脚本连接,下面的这个脚本已经是更新了四五代版本了,最初的代码只能连接,之后增加了一键断开或连接,现在增加了开机后可以多此检查是否网络连接正常
说实话,cmd语言真的太老了!用起来真难受,到我现在这一步很难再发展下去,所以就重新开始一条路,python脚本要更加灵活多变,这次把bat的最终版记录下,免得之后忘记,然后开始新的征程。

代码解释

cmd的语言比较麻烦,还是写下比较好
@echo off 这个语句后面的指令不会显示在弹出的cmd窗口中
echo 显示什么….字符串
for /f %%i in (‘ipconfig ^| findstr PPP’) for循环读取“ipconfig”指令返回的信息组
if [“%%i”]==[“PPP”] 判断返回的信息中是否有 “PPP” 这儿还是实际演示下吧


C:\Users\43582>ipconfig

Windows IP 配置


PPP 适配器 kuandai:

连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::d450:ec7b:dc7b:1a18%48
IPv4 地址 . . . . . . . . . . . . : 10.9.123.72
子网掩码 . . . . . . . . . . . . : 255.255.255.255
默认网关. . . . . . . . . . . . . : 0.0.0.0

无线局域网适配器 WLAN:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

无线局域网适配器 本地连接* 1:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

无线局域网适配器 本地连接* 10:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

以太网适配器 以太网:

连接特定的 DNS 后缀 . . . . . . . :
IPv4 地址 . . . . . . . . . . . . : 10.99.6.117
子网掩码 . . . . . . . . . . . . : 255.255.128.0
默认网关. . . . . . . . . . . . . : 10.99.0.1

以太网适配器 以太网 2:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

以太网适配器 蓝牙网络连接:

媒体状态 . . . . . . . . . . . . : 媒体已断开连接
连接特定的 DNS 后缀 . . . . . . . :

C:\Users\43582>

从上面信息可以看到,拨号连接上会多个 “PPP”的适配器,所以这儿就是利用这个来判断是否拨号连接上,如果连接上,就让网络断开,–rasdial /disconnect–这个指令用来断开宽带连接;如果没有连接,就让他连接–RASDIAL “kuandai” 22217010049 303611–这个指令是让他连接宽带,“宽带名称” 账号 密码 。
连接后开始检测是否连接成功,代码原理同上,因为cmd中定义变量什么都比较麻烦,只能在python中开发

ping 127.0.0.1>nul 这个是用来延时的 ping一下 大概是1秒

@echo off
echo ----------------------------------star-----------------------------------
for /f %%i in ('ipconfig ^| findstr PPP') do (
if ["%%i"]==["PPP"] ( rasdial /disconnect
echo ---------------5555---
ping 127.0.0.1>nul
exit ) else (echo ---------------6666---
ping 127.0.0.1>nul
)
)
RASDIAL "kuandai" 22217010049 303611
echo ----------------------------------connect-1-----------------------------------
ping 127.0.0.1>nul
for /f %%i in ('ipconfig ^| findstr PPP') do (
if ["%%i"]==["PPP"] ( && echo----------------------------------connect----------------------------------- && echo -------------------------------copyright:-------------------------------- &&exit)
)
RASDIAL "kuandai" 22217010049 303611
echo ----------------------------------connect-2-----------------------------------
ping 127.0.0.1>nul
for /f %%i in ('ipconfig ^| findstr PPP') do (
if ["%%i"]==["PPP"] ( && echo----------------------------------connect----------------------------------- && echo -------------------------------copyright:-------------------------------- &&exit)
)
RASDIAL "kuandai" 22217010049 303611
echo ----------------------------------connect-3-----------------------------------
ping 127.0.0.1>nul
exit