中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 这个txt该怎么读取指定的值? 上一主题 | 下一主题
FBOAR
初级用户





积分 86
发帖 31
注册 2007-1-9
状态 离线
『楼 主』:  这个txt该怎么读取指定的值?

已经搞定...感谢lxmxn的解答以及楼下所有关注的朋友 ccwan很热心哈 谢谢~

现有a.txt,内容如下:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\mm]
@=hex(3ef):


也就是有三行是空的  求解该txt如何读取3ef这个值??
试了几次 还是不行


怎么每次都说不清楚 不好意思
我想用这个批处理 echo 3ef这个值 没成功
for /f "eol=[ tokens=2 delims=()" %%i in (a.txt) do set d=%%i
echo %d%
pause

reg export "HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\00000%d%" c:\b.reg


[ Last edited by FBOAR on 2007-1-17 at 06:33 PM ]

2007-1-18 05:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 2 楼』:  

能说详细点吗?



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2007-1-18 06:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 3 楼』:  

是说明白一点



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2007-1-18 06:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hxuan999
中级用户

DOS之日


积分 337
发帖 161
注册 2006-11-4
状态 离线
『第 4 楼』:  

不明白,就是读出3ef吗?

[ Last edited by hxuan999 on 2007-1-17 at 06:12 PM ]



for /f %%h in (`echo hxuan`) do for /f %%x in (`echo hxuan`) do if %%h==%%x nul
2007-1-18 06:11
查看资料  发送邮件  发短消息 网志  OICQ (33899867)  编辑帖子  回复  引用回复
tao0610
高级用户

朦胧的世界


积分 579
发帖 218
注册 2006-10-24
状态 离线
『第 5 楼』:  

多种方法.

for+more
for+findstr
for skip
findstr+变量截取.....




认识自己,降伏自己,改变自己
,才能改变别人!
2007-1-18 06:12
查看资料  发短消息 网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 6 楼』:  

楼主应该把读取“规则”说清楚。否则可能有N种解决方案,但不一定都能真正符合你的要求。

2007-1-18 06:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
FBOAR
初级用户





积分 86
发帖 31
注册 2007-1-9
状态 离线
『第 7 楼』:  

编辑了一下 不好意思

2007-1-18 06:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
9527
银牌会员

努力做坏人


积分 1185
发帖 438
注册 2006-8-28
来自 北京
状态 离线
『第 8 楼』:  

就按照楼主这个文件,下面代码应该可以
for /f "tokens=3 delims==()" %a in (test.reg) do @echo %a


   此帖被 +2 点积分    点击查看详情   
评分人:【 FBOAR 分数: +2  时间:2007-1-18 07:31




我今后在论坛的目标就是做个超级坏人!!!
2007-1-18 06:25
查看资料  发短消息 网志  OICQ (329429)  编辑帖子  回复  引用回复
FBOAR
初级用户





积分 86
发帖 31
注册 2007-1-9
状态 离线
『第 9 楼』:  

楼上的好像不行 试了下

2007-1-18 06:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccwan
金牌会员




积分 2725
发帖 1160
注册 2006-9-23
来自 河北廊坊
状态 离线
『第 10 楼』:  

cmd下使用



三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。
2007-1-18 06:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tao0610
高级用户

朦胧的世界


积分 579
发帖 218
注册 2006-10-24
状态 离线
『第 11 楼』:  

for /f "eol=[ tokens=2 delims=()" %%i in (a.txt) do set d=%%i
echo %d%
pause

怎么没成功?提示什么?
@=hex(3ef):下面没东西了吧.




认识自己,降伏自己,改变自己
,才能改变别人!
2007-1-18 06:42
查看资料  发短消息 网志   编辑帖子  回复  引用回复
FBOAR
初级用户





积分 86
发帖 31
注册 2007-1-9
状态 离线
『第 12 楼』:  



  Quote:
Originally posted by tao0610 at 2007-1-17 05:42 PM:
for /f "eol=[ tokens=2 delims=()" %%i in (a.txt) do set d=%%i
echo %d%
pause

怎么没成功?提示什么?
@=hex(3ef):下面没东西了吧.

--- 有两个空行的


返回
echo 处于打开状态  
下面的路径中的变量也就无效了

我写的就是这个  大家可以试下 导出用户名guest的
reg export "HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\guest" c:\a.reg
for /f "eol=[ tokens=2 delims=()" %%i in (a.reg) do set d=%%i
echo %d%
pause
reg export "HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\00000%d%" c:\b.reg
pause

2007-1-18 06:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 13 楼』:  

HKLM\SAM是安全路径,不修改设置是没办法访问的
for /f "tokens=3" %%i in ('reg query "HKLM\SAM\SAM\DOMAINS\ACCOUNT\USERS\NAMES\GUEST" /ve^|find "没有名称"') do (
for /f "tokens=2 delims=x" %%j in ("%%i") do set a=%%b)


2007-1-18 08:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
minmin888
初级用户





积分 127
发帖 62
注册 2007-4-19
状态 离线
『第 14 楼』:  

for /f "tokens=2 delims=()" %a in (test.reg) do @echo %a 这样更好理解!

2007-5-8 14:32
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: