中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 又来麻烦你们了,求一方法取指定文件内容
作者:
标题: 又来麻烦你们了,求一方法取指定文件内容 上一主题 | 下一主题
kdhades
初级用户





积分 20
发帖 7
注册 2007-11-13
状态 离线
『楼 主』:  又来麻烦你们了,求一方法取指定文件内容

我现在有一文件,名为abc.txt
内容如下
1:10.165.1.101        00:11:5B:94:00:00        00115B940000
2:10.165.1.102        00:90:F5:4A:00:00        0090F54A0000
3:10.165.2.155        00:50:BA:19:00:00        0050BA190000
4:10.165.2.164        00:1A:4D:06:00:00        001A4D060000
5:10.165.2.180        00:0E:A6:C3:00:00        000EA6C30000
6:10.165.2.238        00:00:E8:7D:00:00        0000E87D0000
7:10.165.2.250        00:10:DB:61:00:00        0010DB610000

我说明一下,文件内内容就是行号 IP MAC(带":"的) MAC(去掉":"的) 一共4部分。
我现在想用个命令实现这样一个目的:
比如我输入"1",则系统自动找到第一行,然后把MAC(去掉":"的)那部分为文件名,后面加.reg 为扩展名,执行...就可以

例:
我输入:1(回车)
电脑执行:00115B940000.reg
就可以了

多谢各位大师拉,此事急待解决~~多谢多谢

2007-11-14 12:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 2 楼』:  

这样吗?
@echo off&setlocal enabledelayedexpansion
set /p line1=
set line2=
for /f "tokens=1,3" %%i in (1.txt) do (
     set/a line2+=1
    set str=%%j
    if !line1! equ !line2! (
set str=!str::=!
echo !str!.reg
)
)
pause




简单!简单!再简单!
2007-11-14 12:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ansipeter
中级用户

替身



积分 269
发帖 130
注册 2007-3-23
状态 离线
『第 3 楼』:  

如果只涂简单点的话,下面的就应该够用了
@echo off&setlocal
set /p a=输入行号:
for /f "tokens=2" %%b in ('findstr "^%a%:.*" abc.txt') do (set aa=%%b)&&(call echo %%aa::=%%.reg)


2007-11-14 13:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: