nslookup -q=mx 163.com>t.h 2>nul&&(for /f "tokens=3,5" %a in (t.h) do @if "%a"=="address" echo %b)&del t.h
运行:nslookup -q=mx 163.com得到返回信息:
Server: cache.ctnt.com.cn
Address: 219.150.32.132
Non-authoritative answer:
163.com MX preference = 10, mail exchanger = mxnew-c.163.com
163.com MX preference = 10, mail exchanger = mxnew-d.163.com
163.com MX preference = 10, mail exchanger = mxnew-a.163.com
163.com MX preference = 10, mail exchanger = mxnew-b.163.com
163.com nameserver = ns4.nease.net
163.com nameserver = ns3.nease.net
mxnew-c.163.com internet address = 220.181.12.59
mxnew-c.163.com internet address = 220.181.12.60
mxnew-c.163.com internet address = 220.181.12.61
mxnew-c.163.com internet address = 220.181.12.62
mxnew-c.163.com internet address = 220.181.12.63
mxnew-c.163.com internet address = 220.181.12.64
mxnew-c.163.com internet address = 220.181.12.65
mxnew-c.163.com internet address = 220.181.12.66
mxnew-c.163.com internet address = 220.181.12.67
mxnew-c.163.com internet address = 220.181.12.68
mxnew-c.163.com internet address = 220.181.12.69
mxnew-c.163.com internet address = 220.181.12.51
然后根据文件进行for /f解析
2>nul是用来屏蔽Non-authoritative answer:的
以上信息都是命令在xp sp3下运行后返回的
如果想得到任意一个地址,可以:
nslookup -q=mx 163.com>t.h 2>nul&&(for /f "tokens=3,5" %a in (t.h) do @if "%a"=="address" set b=%b)&del t.h|echo %b%
在这里,用&&或&都可以,推荐用&&。
管道 | 在这里起扩展%b%延迟的作用
Last edited by Hanyeguxing on 2010-3-23 at 16:37 ]