宽带连接工具[bat]
本工具使用批处理编写,提供自动判断网络状态以决定断开或是连上网络,本月已用宽带时长,到月初自动清零。提供联网日志功能,可以记录下所有的连接或断开网络记录。如果连接失败,自动提示输入密码,特别适合每天要更换动态密码者使用。(windows系统可用)
flash模拟演示(swf加载慢请稍候):
下载flash:宽带连接演示.swf
宽带连接工具下载:百度网盘
bat源码:
@echo off
:retry
::窗口配置
title 宽带连接工具
mode con cols= lines= & color ::检查配置文件是否存在,否,则创建。
if not exist netconfig.ini call:remd ::检查配置文件是否符合标准格式,否,则重新创建
findstr . "netconfig.ini">nul && cls||call:remd
Setlocal Enabledelayedexpansion
set bbj1=[宽带连接名称:]
set bbj3=[用户名:]
set bbj5=[密码:]
set bbj7=[本月已用宽带时长]
set bbj9=[时间显示开关]
set bbj11=[宽带时长显示开关]
set bbj13=[上网时间记录开关]
set bbj15=[上次使用时间]
call:extxt ::读取配置信息
Setlocal Enabledelayedexpansion
set n=
For /f "delims=" %% in (netconfig.ini) do (
Set /a n+=
If !n!== set name=%%
If !n!== set user=%%
If !n!== set password=%%
If !n!== set netsc=%%
If !n!== set timekey=%%
If !n!== set netimky=%%
If !n!== set rizhiy=%%
If !n!== set oldtime=%%
If !n!== set olddate=%%
) ::判断月份差,清空宽带时长
set/a "boldm=(1%olddate:~5,2%-100)"
REM echo %boldm%
set/a "bm=(1%date:~5,2%-100)"
REM echo %bm%
set/a "cmon=%bm%-%boldm%
if not %cmon%== call:rewrite
rem echo %netsc%
REM echo %cmon%
::对宽带时长进行变形
set/a "bnewsc1=%netsc%/3600
set/a "bnewsc2=%netsc%%%3600/60
set/a "bnewsc3=%netsc%%%3600%%60
set "bnewsc=%bnewsc1%小时%bnewsc2%分%bnewsc3%秒
rem echo %bnewsc% %bnewsc1% %bnewsc2% %bnewsc3%
rem echo %name% %user% %password% call:clshow
::检测宽带状态自动判断连接或是断开
::断开,并判定结果
rasdial|find "已连接">nul
if %errorlevel%== (
rasdial %name% /DISCONNECT
if %errorlevel%== (
echo 网络已成功断开!
rem ping /n 127.1 >nul
call:wrizi 网络成功断开
call:kdsclj
call:rewrite "%time%" %date%
rem ping /n 127.1 >nul
exit
)
if not %errorlevel%== (
echo 网络断开失败!
ping /n 127.1 >nul & exit
)
) ::连接,并判定,更改
if %errorlevel%== (
rasdial %name% %user% %password%
rasdial|find "已连接">nul
if !errorlevel!== (
echo 网络已成功连接!
call:wrizi 网络成功连接
call:rewrite "%time%" %date%
ping /n 127.1 >nul
exit
)
if not !errorlevel!== (
call:clshow & color 0e
echo 网络连接失败!
echo -----------------------------
echo 更改宽带连接名称,请输入#
echo 更改账号,请输入*
echo 更改密码,请直接输入密码
set /p newpass=
if !newpass!==* (
echo 请输入账号:
set /p newuser=
call:rewrite !newuser! & goto:retry
)
if !newpass!==# (
echo 请输入宽带连接名称:
set /p newname=
call:rewrite !newname! & goto:retry
)
if not !newpass!==* if not !newpass!==# (
call:rewrite !newpass! & goto:retry
)
)
) ::测试结尾
rem echo 测试完成,按任意键退出。&pause>nul ::子程序 ::清屏,重显
:clshow
cls
echo 欢迎使用宽带连接工具!
if %timekey%== echo 现在时间 %date% %time%
echo 当前账号:%user%
if %netimky%== echo 本月已用宽带时长:%bnewsc%
goto:eof ::更改配置文件
:rewrite
Setlocal Enabledelayedexpansion
set index=
for /f "delims=" %%i in (netconfig.ini) do (
set /a index+=
set var!index!=%%i
)
set var%=%
set var%=%
(for /l %%i in ( !index!) do echo !var%%i!)>netconfig.ini
goto:eof ::重新创建配置文件
:remd
rem pause
echo [宽带连接名称:]>"netconfig.ini"
for %% in (
宽带连接
[用户名:] [密码:] [本月已用宽带时长] [时间显示开关] [宽带时长显示开关] [上网时间记录开关] [上次使用时间]
"%time%"
%date%
)do echo %%>>"netconfig.ini"
goto:retry
rem echo 欢迎使用宽带连接工具!
goto:eof ::检测配置是否合法,否则,重置
:extxt
set n=
Setlocal Enabledelayedexpansion
For /f "delims=" %%i in (netconfig.ini) do (
Set /a n+=
set bb!n!=%%i
rem echo bb!n!=%%i
)
for /l %%i in ( ) do (
rem if !bb%%i! neq !bbj%%i! echo "!bb%%i!""!bbj%%i!"&pause>nul
if !bb%%i! neq !bbj%%i! call:remd
)
goto:eof ::宽带计时累加(支持跨天)
:kdsclj
set/a "boldt=(1%olddate:~8,2%-100)*3600*24+(%oldtime:~1,2%)*3600+(1%oldtime:~4,2%-100)*60+(1%oldtime:~7,2%-100)"
set/a "bt=(1%date:~8,2%-100)*3600*24+(%time:~0,2%)*3600+(1%time:~3,2%-100)*60+(1%time:~6,2%-100)"
set/a "ctime=%bt%-%boldt%
set/a "newsc=%netsc%+%ctime%
call:rewrite %newsc%
goto:eof ::写入日志
:wrizi
if %rizhiy%== echo %date% %time% % >> 网络连接日志.txt
for %%i in (网络连接日志.txt )do if %%~zi GTR del "%%i"
goto:eof
将以上代码复制保存为x.bat即可。
宽带连接工具[bat]的更多相关文章
- 实用AutoHotkey功能展示
AutoHotkey是什么 AutoHotkey是一个自动化脚本语言. AutoHotkey有什么用 可以让你用热键操控一切,操作电脑就像在表演魔术 我的口号 AutoHotkey!用过都说好! Au ...
- bat文件的妙用1-一键开启所有开发软件
每天早上来的第一件事情,就是打开电脑,然后开一堆的软件 1.wamp 开发环境 2.钉钉 通讯工具 3.PHPstrom 开发工具 4.nodejs.bat Nodejs的扩展(node D:/w ...
- 【转】宽带路由器应用(三)—ARP欺骗防护功能的使用
在局域网中,通信前必须通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址).ARP协议对网络安全具有重要的意义.通过伪造IP地址和MAC地址实现ARP欺骗,对网络的正常传输和安全都是一个很 ...
- Centos7宽带连接
网上大多教程都是虚拟机上实现宽带连接的,但是实际有差别 装完系统最头疼的就是宽带连接 转自:centos创建宽带连接-EnchanterBlue-ChinaUnix博客 http://blog.chi ...
- BAT“搅局”B2B市场,CIO们准备好了吗?
"CIO必须灵活构建其所在企业的IT系统,深入业务,以应对日新月异的数字化业务环境." BAT军团"搅局"B2B市场,CIO们准备好了吗? 庞大的企业级市场 ...
- Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)
所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...
- 猫哥网络编程系列:详解 BAT 面试题
从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...
- BVT & BAT (版本验证测试和版本验收测试)
BVT & BAT 版权声明:本文为博主原创文章,未经博主允许不得转载. 一.BVT: (Build Verification Test ) BVT的概念: BVT(版本验证测试)是在所有开发 ...
- 批处理bat 命令
1.批处理常用符号: - echo 打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置 语法:@echo [{ on|off }] echo{"显示 ...
随机推荐
- DataTables在回调方法中使用api
$(document).ready(function() { $('#example').dataTable( { "initComplete": function () { va ...
- block(四)揭开神秘面纱(下)
看此篇时,请大家同时打开两个网址(或者下载它们到本地然后打开): http://llvm.org/svn/llvm-project/compiler-rt/trunk/lib/BlocksRuntim ...
- Codeforces 414B Mashmokh and ACM
http://codeforces.com/problemset/problem/414/B 题目大意: 题意:一个序列B1,B2...Bl如果是好的,必须满足Bi | Bi + 1(a | b 代表 ...
- CoFun 1613 单词连接
Description Stan有N个不同的单词,这天,Stan新结交的两个朋友来他这里玩,Stan作为主人,他需要送给他们单词,但由于Stan不能偏心,所以Stan给每个单词一个权值v_i,他需要他 ...
- 继承Object和ContextBoundObject处理效率上的差距
继承Object和ContextBoundObject处理效率上的差距 ContextBoundObject一个很熟悉的对象,它提供对象有处理上下文的能力:通过它能够方便地实现AOP处理机制.它带来好 ...
- Eclipse + CDT + YAGARTO + J-Link,STM32开源开发环境搭建与调试
Eclipse+CDT+YAGARTO+J-Li:开源开发环境搭建与调试:作者:Chongqing:邮箱:ycq.no1@163.com:文档版本:V1.0:发布日期:2014-08-04:前言:此文 ...
- Zigzag Iterator 解答
Question Given two 1d vectors, implement an iterator to return their elements alternately. For examp ...
- OpenStackCLI调试及术语识记
1,Project are organizational units in the cloud,and are also known as tenants or accounts.Each user ...
- MBI 跨国网络传销 金字塔诈骗 解密
马来西亚 反传销博客地址http://combatingillegalpyramidscheme.blogspot.jp/search/label/Mface 需要FQ访问 闽渝警方协作抓获一名公 ...
- 数据库中的索引Index
索引就像一本书的目录,而书中的索引是对一个词语的列表,其中注明了包含各个词的页码.数据库中的索引 是某一个表中一列或者若干列值的集合和相应的只想表中物理标识这些值的数据页的逻辑指针清单. 索引的作用: ...