标题: [网络连接] 批处理如何实现ping指定域名或ip当响应时间大于指定数值时触发报警? [打印本页]
作者: keshun 时间: 2013-6-12 16:25 标题: 批处理如何实现ping指定域名或ip当响应时间大于指定数值时触发报警?
本帖最后由 pcl_test 于 2016-11-24 20:31 编辑
ping外网时,只要在ping过程中连续出现三个值大于设定值时调用声音报警,并把报警触发时间记录到a.txt,ping本身不退出,只是报警。
作者: CrLf 时间: 2013-6-12 17:55
楼主这么语焉不详,不给你完整代码,留个思路自己整吧,我也惜字如金
管道是单向的,所以要实现撸主的要求,得绕一下:- @echo off
- start /b cmd /c ping /t xxx.xxx.xxx.xxx^>ping.log
- :loop
- for /f %%a in ('type ping.log') do (
- 你要进行的操作
- )
- goto loop
复制代码
作者: keshun 时间: 2013-6-12 19:25
本帖最后由 keshun 于 2013-6-12 19:26 编辑
回复 2# CrLf
抱歉!!我文字描述不过祥细,见谅!!
感谢论坛巡查的答复,只是本人功低不足,代码添补多次都出错,还望进一步解答!
我是想对网速质量的进行监控,异常第一时间发现进行排查问题。
1。通过ping www.sina.com.cn -t,判断网速质量,新浪网站的正常ping是3-5ms,当ping值连续3个大于20ms时给予声音报警,这样可以提醒我关注异常时段分析问题。
2。把触发报警时间记录在a.txt,在我分析服务器记录数据时有时间依据。
3。报警声音只要能调用系统声音会响就行,最好不弹播放器窗口。
作者: 522235677 时间: 2013-6-12 22:16
- @echo off & title 网络高延迟报警Beta
- set t=15
- set ip=192.168.1.1
- set file=记录.txt
- set tee=^|cscript /nologo "%temp%\tee.vbs" ^>^>%file%
- echo 正在持续检测中...
- echo>"%temp%\tee.vbs" text = wscript.stdin.readall:wscript.echo text:wscript.stderr.write text
- :2
- for /f "tokens=3 delims==" %%a in ('ping %ip% -n 1') do (
- if not "%%a" GEQ "0" echo %date:~0,10% %time:~0,8% 网络异常%tee% & echo & goto 2
- for /f "delims=m" %%b in ("%%a") do (if %%b GEQ %t% echo %date:~0,10% %time:~0,8% 延迟过大:%%bms%tee% & echo )
- ping 127.1 -n 2 >nul
- goto 2
- )
- echo %date:~0,10% %time:~0,8% 网络中断%tee% & echo & goto 2
复制代码
以前写的,超过15秒,主板蜂鸣器就报警
作者: keshun 时间: 2013-6-13 14:29
回复 4# 522235677
感谢!虽然跟我的预期效果有点出入,但也基本满足,感谢!!
作者: iabat 时间: 2013-12-24 10:34
回复 4# 522235677
看了受益良多,但有几句不太明白:
set tee=^|cscript /nologo "%temp%\tee.vbs" ^>^>%file%
echo 正在持续检测中...
echo>"%temp%\tee.vbs" text = wscript.stdin.readall:wscript.echo text:wscript.stderr.write text
这个所起的作用是??谢谢
作者: 522235677 时间: 2013-12-24 17:00
回复 6# iabat
set tee=^|cscript /nologo "%temp%\tee.vbs" ^>^>%file%
echo 正在持续检测中...
echo>"%temp%\tee.vbs" text = wscript.stdin.readall:wscript.echo text:wscript.stderr.write text
这个是vbs代码,目的就是屏显的同时将内容写到文本中。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |