中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 可自定生成记录大小和ping的时间长短---自动Ping值统计
作者:
标题: 可自定生成记录大小和ping的时间长短---自动Ping值统计 上一主题 | 下一主题
ymtien
初级用户





积分 36
发帖 11
注册 2006-9-26
状态 离线
『楼 主』:  可自定生成记录大小和ping的时间长短---自动Ping值统计

因为工作需要写了这个批处理,给大家参考看看,有部份功能我也是参考别人写的之后再追加功能,所以这个是我修改整合后的加强版本! REM ------ 自动Ping值统计分页记录 ------ REM 定义视窗大小 title Ping(ICMP)记录器&color 07 @echo off&mode con cols=80 lines=16 @echo off REM 删除旧记录 cd Record del *.txt /Q cd.. REM 定义输入变数 echo.-------- 请输入以下Ping值参数 ------- echo. set a= set/p a=[请输入您要Ping的网址或IP]: echo. set n= set/p n=[请输入Ping值统计时间/分钟]: echo. set f= set/p f=[请输入Ping值统计记录档生成间隔/分钟]: echo. set s= set/p s=[请输入Ping Send buffer size/bytes]: echo. echo. echo.→ 开始对[%a%]透过ICMP发送回应请求... ping 127.1 -n 2 >nul REM 定义时间变数 set date1=%date:~0,10% set date2=%date1:/=% set time1=%time:~0,10% set time2=%time1REM =% REM 宣告Ping值回应变数 set for=于以下IP位置: set of=的 set with=用 set in=(以 set data:=封包: set milli-seconds:=毫秒为单位) set Approximate=大约 set times=时间: set bytes= bytes= set round=回应 set trip=花费 set Reply=回应 set from=来自 set timed= 时间: set out=超过 set statistics=值统计 set Packets:=封包: set Sent=已发送= set Received= 已收到= set Lost= 已丢弃= set loss)=丢弃) set Minimum=最小值= set Maximum= 最大值= set Average= 平均值= set TTL= TTL= setlocal enabledelayedexpansion REM 宣告分页记录判别变数 set m=1 echo ◎统计时间开始于:%date1% %time1% >> Record/%a%_%date2%_%m%.txt REM Ping值统计记录开始 Goto loop REM 宣告档案生成别名变数 :Creat-new-files set /a m+=1 Set t=0 REM 双回圈判别式 :loop REM 宣告Ping值统计周期变数 set /a r+=1 set /a t+=1 REM 写入Ping值记录 (for /f "delims=" %%i in ('ping -n 30 -l %s% %a%') do ( set ret= for %%a in (%%i) do if defined %%a (set ret=!ret! !%%a!) else set ret=!ret! %%a if not "!ret!"=="" (set ret=!ret: time=%time% ! && echo !ret!) else echo. )) >> Record/%a%_%date2%_%m%.txt REM 动态进度表 cls set c=^set /p=■%b%^<nul^&ping/n 127.1^>nul^& echo. echo. 【回应地址:%a% 发送封包大小:%s% bytes】 echo. 【Ping值统计时间:%n%分钟 Ping值统计记录档生成间隔:%f%分钟】 echo. echo. ※如果要中止执行作业请按[Ctrl+C]! echo. echo. echo. echo. Ping值统计数据记录中 → echo. color 7 set/p= <nul&%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c% echo. 100%% echo. echo. 完成记录档写入... set c=■ REM 写入Ping值记录 (for /f "delims=" %%i in ('ping -n 30 -l %s% %a%') do ( set ret= for %%a in (%%i) do if defined %%a (set ret=!ret! !%%a!) else set ret=!ret! %%a if not "!ret!"=="" (set ret=!ret: time=%time% ! && echo !ret!) else echo. )) >> Record/%a%_%date2%_%m%.txt REM 动态进度表 cls set c=^set /p=■%b%^<nul^&ping/n 127.1^>nul^& echo. echo. 【回应地址:%a% 发送封包大小:%s% bytes】 echo. 【Ping值统计时间:%n%分钟 Ping值统计记录档生成间隔:%f%分钟】 echo. echo. ※如果要中止执行作业请按[Ctrl+C]! echo. echo. echo. echo. Ping值统计数据记录中 → echo. color 7 set/p= <nul&%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c% echo. 100%% echo. echo. 完成记录档写入... set c=■ REM 判别统计时间已否已?输入时间 if "%r%"=="%n%" Goto exit REM 判别已?输入的换页储存时间 if "%t%"=="%f%" Goto Creat-new-files goto loop REM 结束Ping值统计 :exit cls echo. echo. echo. echo. ------- Ping值统计程序已完成,稍后程式将自动关闭,谢谢您的使用ByeBye ^^ ------- ping -n 10 127.1>nul taskkill /IM cmd.exe


2007-3-27 04:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bjsh
银牌会员





积分 2000
发帖 621
注册 2007-1-1
状态 离线
『第 2 楼』:  

del *.txt /Q 这也太...... 万一这个目录下还有有用的.txt呢;..............


2007-3-27 05:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ymtien
初级用户





积分 36
发帖 11
注册 2006-9-26
状态 离线
『第 3 楼』:  

你可以更改不要像我一樣把執行都把舊的記綠檔都砍了..這只是給大家參考!


2007-3-27 05:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: