标题: 如何去掉IP字符串后的冒号
[打印本页]
作者: XinStar
时间: 2007-7-8 22:43
标题: 如何去掉IP字符串后的冒号
在批处理中想得到某网站的IP,但每次的结果是在得到的IP后多了一个:与,怎样才能消除这个:号呢,是需要在外面加代码,还是在当前代码上直接修改啊!
for /f "tokens=3 delims=" %%i in ('ping "Zjjwp.3322.Org" -n 1 ^| find /i "Reply from"') do set ip=%%i
[
Last edited by bjsh on 2007-7-31 at 09:55 AM ]
作者: wjh6088
时间: 2007-7-8 22:53
for /f "tokens=3 delims=: " %%i in ('ping "Zjjwp.3322.Org" -n 1 ^| find /i "Reply from"') do set ip=%%i
作者: XinStar
时间: 2007-7-8 23:09
2楼的,试过了,还是不行啊,再请教些句是什么意思呢?
作者: wjh6088
时间: 2007-7-8 23:22
我的测试正常
C:\Documents and Settings\Administrator>for /f "tokens=3 delims=: " %i in ('ping
"Zjjwp.3322.Org" -n 1 ^| find /i "Reply from"') do set ip=%i
C:\Documents and Settings\Administrator>set ip=222.245.153.172
C:\Documents and Settings\Administrator>echo %ip%
222.245.153.172
C:\Documents and Settings\Administrator>
作者: XinStar
时间: 2007-7-8 23:26
真的可以了呢,真的非常感谢你啊!
对了那句delims是什么意思啊
作者: qinbuer
时间: 2007-7-8 23:27
LZ可能网络太慢了,发送数据包超时(time out),再试几次呗
作者: wjh6088
时间: 2007-7-8 23:37
delims后面的是分隔符号,本例是空格和冒号,所以“delims=: ”
详细的请在cmd下for/?查看
作者: zqdarkday
时间: 2007-7-8 23:59
delims是指以什么作为分隔符
4楼的"delims=: "的意思就是以:和空格作为分隔符
那么那行字符就分隔成了Reply from 222.245.153.172 bytes=32 time=1808ms TTL=53
再加上tokens=3
最后就输出 222.245.153.172
LZ可以多试试 把tokens=的数字换下 或把delims=的符号换下
就知道了