标题: [文本处理] [已解决]批处理ping文本内多个IP保存结果到另一文本 [打印本页]
作者: beck1321 时间: 2009-8-28 11:23 标题: [已解决]批处理ping文本内多个IP保存结果到另一文本
不是很懂批处理来恳请大虾们帮忙,也搜索过,可能关键词没把握好,没搜出什么。
我的具体情况是这样的
出来了新游戏 有很多服,列出了N个ip
要看哪个最快,就是要去ping那个ip,如果一个一个ping下去真的很不方便
所以第一个我就想到了批处理的高手们
例如 现有a.txt 里面有两个ip
192.168.1.1
192.168.1.2
能否 ping a.txt 内的所有ip 并将反馈值 保存到另一文本文档b.txt
希望我说清楚了 谢谢先
[ 本帖最后由 beck1321 于 2009-8-28 12:38 编辑 ]
作者: beck1321 时间: 2009-8-28 11:25
直接ping域名 倒是搜到了 ping www.163.com >c:\a.txt
如何把 那个域名换成文档就不知道了。。。。
作者: beck1321 时间: 2009-8-28 11:30
软件找到了 但是还是希望能有个批处理
作者: Lumiere 时间: 2009-8-28 12:26
- for /f "delims=" %%a in (a.txt) do ping %%a>>b.txt
复制代码
作者: beck1321 时间: 2009-8-28 12:37
谢谢 楼上 虽然不知道啥原理 但是搞定了 就是慢了些 呵呵
作者: Lumiere 时间: 2009-8-28 12:41 标题: 回复 5楼 的帖子
这是最基本的批处理,很简单的,for最基本最实际的运用
作者: fastslz 时间: 2009-8-28 14:09
这个能直接得到最快的IP- @echo off
- cd.>test.txt
- setlocal enabledelayedexpansion
- for /f "delims=" %%a in (a.txt) do (
- rem 下面的ping -n 1速度是最快的,如果想更精确一点改成ping -n 2或ping -n 3 .....
- for /f "tokens=3 delims=," %%b in ('ping -n 1 %%a^|find "Average"') do (
- set var=%%b
- set var=!var:Average=!
- set var=!var: =!
- set var=!var:ms=!
- >>test.txt echo %%a!var!
- ))
- for /f "tokens=2 delims==" %%c in (test.txt) do (
- set /a max=%%c
- for /f "tokens=2 delims==" %%d in (test.txt) do (
- set /a num=%%d
- if !num! gtr !max! (set max=!num!) else set max=!max!
- ))
- type test.txt|findstr /e "=!max!"
- del test.txt
- pause
复制代码
[ 本帖最后由 fastslz 于 2009-8-28 14:17 编辑 ]
作者: beck1321 时间: 2009-8-29 09:12
原帖由 fastslz 于 2009-8-28 14:09 发表
这个能直接得到最快的IP@echo off
cd.>test.txt
setlocal enabledelayedexpansion
for /f "delims=" %%a in (a.txt) do (
rem 下面的ping -n 1速度是最快的,如果想更精确一点改成ping -n 2或ping -n 3 .....
f ...
测试了下好像不太对
我的a.txt 就放了两个ip
可是测试出来的却是 最慢的那个
起初我以为 只需要把您的那个max改成min 。。。瞎想的 。。。结果依然显示的是最慢的
添加新ip进a.txt 结果会显示最慢的。。。
[ 本帖最后由 beck1321 于 2009-8-29 09:16 编辑 ]
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |