![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 00:18 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 关于获取文本指定位置的问题 |
| 可打印版本 726 / 7 |
| 第1楼 andison625 | 发表于 2008-05-30 17:44 |
| 初级用户 发帖 36 积分 70 | |
|
关于获取文本指定位置的问题 初来报到,有些问题和命令不熟悉,望大虾们指点一二..谢谢
我需要查出自己的IP,然后根据IP,从数据文本中,找出相对应的服务器地址. 并且要自动化地设置.... 以下是思路,和想不通的地方: 有一IP的数据地址存在文档中..格式如下: 10.248.52.63 10.248.31.15 ...... 10.248.52.64 10.248.31.16 ...... 10.248.52.65 10.248.31.16 ...... 10.248.52.166 10.248.31.16 ...... 10.248.52.67 10.248.31.32 ...... 10.248.52.168 10.248.31.32 ...... 10.248.52.69 10.248.31.32 ...... 10.248.52.170 10.248.31.33 ...... 然后,获取自己的IP,并存到myip.txt文档中 for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"' do set ip=%%iecho 你的IP是:%ip% ( find "%ip%" < icdconfig.txt ) >myip.txt :: 之后myip.txt中有了一行数据,如: 10.248.52.63 10.248.31.15 ...... 这些数据是由EXCLE转来的.后边的 ".........." 都是剩下的几个服务器IP地址...两个IP地址中间的是用Tab 格开. 我需要获取 10.248.31.15 这个IP的最后一段(15这个数) 并要存到一个变量里,以后调用 问题就在这里,我要怎样才可以获得15这个数,并存到变量里, 供我再调用? 曾试用 for, findstr ,但都是不能指定这个位置....... 大家帮帮忙..... ![]() [ Last edited by andison625 on 2008-6-1 at 09:52 AM ] |
|
| 第2楼 bat-zw | 发表于 2008-05-30 18:12 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
看了楼主的描述,我哭了,学了这么多年的中文却搞不懂楼主所表达的意思,看来我还是要再去进修几年中文了。
|
|
| 第3楼 26933062 | 发表于 2008-05-30 18:19 |
| 银牌会员 发帖 879 积分 2,268 | |
Originally posted by zw19750516 at 2008-5-30 18:12: 哈哈哈,我还以为就我这没读过什么书的看不懂,原来你也看不懂啊。。。。! |
|
| 第4楼 lxmxn | 发表于 2008-05-30 18:34 |
| 版主 发帖 4,938 积分 11,386 | |
|
楼主似乎是这个意思:
|
|
| 第5楼 andison625 | 发表于 2008-06-01 09:40 |
| 初级用户 发帖 36 积分 70 | |
|
我意思是...从文本获取指定位置的一个数值.
192.168.0.12 10.248.31.15 我就是要第二个IP的最后一段数字 (15这个数),并赋值给一个变量供我调用咯.. |
|
| 第6楼 andison625 | 发表于 2008-06-01 09:49 |
| 初级用户 发帖 36 积分 70 | |
|
谢谢版主lxmxn了...
for /f "tokens=2" %%a in (myip.txt) do @(for /f "delims=. tokens=4" %%b in ("%%a") do @echo.%%b) 这个方法找到了我要的位置. 但不是很明白 for 的用法,好像跟我学过的语言有很大的区别 论坛有没有像CHM的 批处理教程供下载? 很想学好批处理...... |
|
| 第7楼 liminghack | 发表于 2008-06-01 10:02 |
| 初级用户 发帖 25 积分 51 来自 学校 | |
|
不会吧! 不知为什么,我看了楼主的描述,脑子里有点昏了!究竟是什么啊?
|
|
| 第8楼 joyn | 发表于 2008-06-01 19:05 |
| 中级用户 发帖 105 积分 280 来自 广西 | |
|
@echo off&&setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1*" %%i in (myip.txt) do ( if "%%i"=="192.168.0.12" ( echo 以应的服务器IP: %%j&&set ips=%%j for /f "delims=. tokens=1-4 " %%a in ("!ips!") do ( set ipxs=%%d&echo 对应的服务器IP的最后一位: !ipxs! ))) 你想实现的是这样吗? 其中的变量你自己换.....不知道是否你的意思 [ Last edited by joyn on 2008-6-1 at 07:10 PM ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |