中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 17:02
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [感谢HAT和版主3742668解答]ping命令处理-精彩
可打印版本  1,216 / 13
第1楼 123cainiao 发表于 2007-08-30 19:32
初级用户 发帖 41 积分 97
[感谢HAT和版主3742668解答]ping命令处理-精彩
学习写批处理文件,遇到下面这个问题,找了半天,不知如何处理,请各位大侠指教:
程序要实现的功能:
1、ping 一个域名(www.sina.com),把ping 出的具体IP地址(比如:218.30.66.101)记录到名字为 ip.ini的文件里。
2、ip.ini的原有文件内容如下:
yuming=www.sian.com
yumingip=218.11.11.10
也就是说PING后,自动更换这个IP

再次感谢HAT和版主3742668的回复,通过学习两位的代码,可以发现写程序思路是非常重要的,着实让人受益匪浅!

[ Last edited by 123cainiao on 2007-9-2 at 03:28 PM ]
第2楼 HAT 发表于 2007-08-30 20:44
版主 发帖 5,017 积分 9,023
try this one:


[ Last edited by HAT on 2007-8-31 at 05:01 PM ]
第3楼 beiwei36 发表于 2007-08-31 06:00
新手上路 发帖 9 积分 18
请问下自动换取IP的ip列表在那里存放?还是随机的?
第4楼 123cainiao 发表于 2007-08-31 10:34
初级用户 发帖 41 积分 97
IP列表在IP.ini文件里。也就是说IP.ini文件里一开始就有文件内容如下:
yuming=www.sian.com
yumingip=218.11.11.10
这里只是用批处理来达到自动检测域名指向的IP,并更新的目的.
 
测试是否实现要求的功能很简单,用记事本写个ini文件,里面只有2行内容:
yuming=www.sian.com
yumingip=218.11.11.10
然后保存。
接下来运行设计的批处理程序,如果达到更新yumingip=218.11.11.10的目的,就是设计成功了。

[ Last edited by 123cainiao on 2007-8-31 at 10:38 AM ]
第5楼 HAT 发表于 2007-08-31 16:59
版主 发帖 5,017 积分 9,023
//这里是不是HAT提供的答案里条件判断上有小BUG

2楼代码已更新
第6楼 bbq5201 发表于 2007-08-31 17:01
初级用户 发帖 51 积分 136
如果ping 出的IP...位数不同..怎么办??
61.124.12.96
61.124.121.231
61.12.54.12
第7楼 HAT 发表于 2007-08-31 17:03
版主 发帖 5,017 积分 9,023
//如果ping 出的IP...位数不同..怎么办??

这样的话,获取真实IP地址的那段要修改一下,会比较麻烦,但并非无法实现。
第8楼 csyfly2003 发表于 2007-08-31 19:33
新手上路 发帖 5 积分 10
;):P:P
第9楼 xxi 发表于 2007-08-31 22:34
初级用户 发帖 24 积分 48
是不是过于麻烦,
可以用for.读取,然后直接写到那个文件,都可以自己加的
第10楼 3742668 发表于 2007-09-02 15:05
荣誉版主 发帖 718 积分 2,013
第11楼 123cainiao 发表于 2007-09-02 15:24
初级用户 发帖 41 积分 97
Originally posted by 3742668 at 2007-9-2 03:05 PM:
第12楼 3742668 发表于 2007-09-02 15:29
荣誉版主 发帖 718 积分 2,013
Re 123cainiao:
消息收到,要实现四楼的功能也很简单,稍做修改即可:
第13楼 123cainiao 发表于 2007-09-02 16:39
初级用户 发帖 41 积分 97
版主3742668的程序运行会有如下2个问题:
1、如果IP.ini文件里有其余内容,程序运行后会删除其余内容,只留相关的那两句:
如ip.ini文件内容如下:
abc=1.20.35
txt=name
.......
yuming=www.sian.com
yumingip=218.11.11.10
如果运行批处理文件后:
ip.ini直接变成
yuming=www.sian.com
yumingip=218.11.11.10
其余不相干内容全部被删了。
2、是字符串变量的问题
如果把yumingip改名为yu_ming_ip_0
这时无论ip.ini内容如何,程序运行后,ip.ini里都只有:
yuming=www.sian.com
这一行.

[ Last edited by 123cainiao on 2007-9-2 at 05:20 PM ]
第14楼 3742668 发表于 2007-09-02 16:45
荣誉版主 发帖 718 积分 2,013
Originally posted by 123cainiao at 2007-9-2 16:39:
版主3742668的程序运行会有如下问题:
如果IP.ini文件里有其余内容,程序运行后会删除其余内容,只留相关的那两句:
如ip.ini文件内容如下:
abc=1.2 ...

文件格式一开始没说清楚。
这个也不是问题,参考一下 findstr ,以及 > 和 >>的差别,或许另外配合for命令的skip开关,还是很简单的。
你先自己尝试一下,实在不行你再求助大家吧。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023