![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 12:07 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]BAT如何获取这几个字符 |
| 可打印版本 1,047 / 9 |
| 第1楼 bing614 | 发表于 2007-05-04 10:56 |
| 初级用户 发帖 20 积分 44 | |
|
[求助]BAT如何获取这几个字符 使用ipconfig/all得到如下:
----------------------------------------------------- Windows IP Configuration Host Name . . . . . . . . . . . . : Join Primary Dns Suffix . . . . . . . : Node Type . . . . . . . . . . . . : Unknown IP Routing Enabled. . . . . . . . : No WINS Proxy Enabled. . . . . . . . : No Ethernet adapter 本地连接: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Realtek RTL8139/810x Family Fast Ethernet NIC Physical Address. . . . . . . . . : 00-11-09-89-1B-C4 Dhcp Enabled. . . . . . . . . . . : No IP Address. . . . . . . . . . . . : 192.168.0.1 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 192.168.0.254 DNS Servers . . . . . . . . . . . : 202.96.128.143 202.96.128.86 202.96.128.68 202.96.128.166 ---------------------------------------------------------------------------------------------------------- 我想获取次DNS:202.96.128.86以及后面的202.96.128.143,202.96.128.166.应该怎么写,请指教. |
|
| 第2楼 slore | 发表于 2007-05-04 11:42 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
看下tokens的用法
|
|
| 第3楼 bing614 | 发表于 2007-05-04 12:48 |
| 初级用户 发帖 20 积分 44 | |
|
有没有代码演示一下
|
|
| 第4楼 qq43142691 | 发表于 2007-05-04 13:17 |
| 中级用户 发帖 152 积分 326 | |
|
什么意思啊。。。你要什么字符啊?
|
|
| 第5楼 bing614 | 发表于 2007-05-04 15:15 |
| 初级用户 发帖 20 积分 44 | |
|
我想获取后备DNS
202.96.128.86 202.96.128.68 202.96.128.166 |
|
| 第6楼 ansipeter | 发表于 2007-05-04 15:45 |
| 中级用户 发帖 130 积分 269 | |
|
楼主试试下面的代码:
|
|
| 第7楼 bing614 | 发表于 2007-05-04 16:41 |
| 初级用户 发帖 20 积分 44 | |
|
楼上的朋友,多谢了,
不过,如果是这样呢.又应该怎么写. 202.96.128.86 192.168.0.254 219.128.3.61 |
|
| 第8楼 lxmxn | 发表于 2007-05-04 16:50 |
| 版主 发帖 4,938 积分 11,386 | |
|
试试这个?
|
|
| 第9楼 chenall | 发表于 2007-05-04 21:01 |
| 银牌会员 发帖 469 积分 1,276 来自 福建泉州 | |
|
提供一个思路,
先使用findstr /n /c:"DNS Servers"获取DNS地址所在的行号. 然后再根据行号读取后面的地址. |
|
| 第10楼 bing614 | 发表于 2007-05-05 00:48 |
| 初级用户 发帖 20 积分 44 | |
|
多谢chenall给出的提示,已经成功了.代码:
chenall @echo off&SetLocal ENABLEDELAYEDEXPANSION SET string= for /f "tokens=1* delims=:" %%P in ('ipconfig/all^|findstr /n /c:"DNS Servers"') do ( for /f "tokens=* delims=" %%I in ('ipconfig/all^|findstr /n ".*"') do ( for /f "tokens=1* delims=:" %%K in ("%%I") do ( if %%K GEQ %%P ( for /f "tokens=2 delims=: " %%J in ("%%I") do (SET string=!string!;%%J) ) ) ) ) echo .......... echo !string!>b.txt pause |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |