批处理ping多个ip CPU占用太高了 求大神优化!!

自己写了个批处理,用来PING多个IP,连续达到一定次数的超时就自己弹出一个窗口提醒下,省的自己老盯着那么多窗口看,但是打开多个IP发现占用的CPU太高了
命令如下:
@echo off
for /f "delims=" %%i in (ip.txt) do start cs.cmd %%i & ping /n 2 127.1>nul

cs.cmd命令如下:
@echo off
set var=0
:begin
ping %1 -n 1 |findstr /i "ttl"
if %errorlevel%==1 (
set /a var+=1
if %var% GTR 3 ( set var=0 & msg %username% /time:5 %1 ping不通了!!! )
goto begin)
set var=0
ping /n 2 127.1>nul
goto begin
感觉这命令还是不好,有没有大神能帮忙优化下,这个理论上可以但是一打开发现占用的CPU太高了,想弄小点,有没有办法呢。

第1个回答  2013-04-10
愿我的答案 能够解决您的烦忧
1,CPU是根据您电脑配置的来的 35%不算高
2,可能是您的后台启动项和IE缓存过多导致的。
3,建议您使用腾讯电脑管家----电脑加速---启动项禁止--清理电脑垃圾---重启后再看
如果您对我的答案不满意,可以继续追问或者提出宝贵意见,谢谢
第2个回答  2013-03-31
为什么要同时PING呢,而且还一直开着那么多CMD一直常驻内存,当然占用高了,看这代码,要是哪个IP不通,不是一直在那提示消息。要是整网段不通,不死机才怪追问

额,是的,主要就是监控这些个IP有没有掉网的情况,以前的命令是for /f %%i in (ip.txt) do start ping %%i -t & ping /n 2 127.1>nul 只有这一条,但是也是有很多cmd窗口挂那,但是CPU不会有这个后写的高,开个40个IP,也就20%左右,后来想改来着,能提个醒什么的,但是写完发现太高了。

追答

没见过这样测网络的,除非你这电脑性能很强悍。要么在每个客户端上单独测,要么一个一个IP的测,你要同时开那么多进程,对电脑要求满高的。而且你一直同时ping那么多IP,多多少少也占用了带宽。优化是没什么绝招可供你参考了,不过:你说的40个IP,全PING一轮也就20秒左右,相当每20秒测试一次是否断开,个人觉得还是可以接受的。如果你要求那么高非得在一台机上记录每一秒情况,也只能那样了。

本回答被网友采纳
第3个回答  2013-03-31
有人编好的小工具啊,你何必类?
PingInfoViewv1·17汉化版 直接Ping指定ip。
第4个回答  2019-07-24

九~~州ip ,连上就可以改ip了,然后点自己网站,

浏览五个页面以上,每个页面停留一分钟左右。

国内动态IP随便换

多IP地区

相似回答