中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理显示路径问题【已解决】
作者:
标题: 批处理显示路径问题【已解决】 上一主题 | 下一主题
pan542
新手上路





积分 9
发帖 8
注册 2006-12-15
状态 离线
『楼 主』:  批处理显示路径问题【已解决】

echo off
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query HKEY_LOCAL_MACHINE\SOFTWARE\Tencent\QQ2009 /v Install') do (
  set QQPathL=%%a
  set QQPathR=%%b
)
set QQPath=%QQPathL:~-1%:%QQPathR%
echo %QQPath%
pause

上面代码是显示QQ的安装路径,问一下怎么显示(默认)里的数值?

[ Last edited by pan542 on 2010-4-6 at 22:44 ]

2010-4-2 08:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pan542
新手上路





积分 9
发帖 8
注册 2006-12-15
状态 离线
『第 2 楼』:  

比如下面的注册表信息
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\信息\路径]
@="C:\\Program Files\\信息"

如何用批处理显示"C:\\Program Files\\信息"的信息?

2010-4-2 11:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 3 楼』:  


@echo off
for /F "skip=4 tokens=2,*" %%a in ('reg query "HKLM\SOFTWARE\信息\路径" /ve') do echo %%b
pause

@echo off
for /F "skip=4 tokens=2,*" %%a in ('reg query "HKLM\SOFTWARE\信息\路径" /v ""') do echo %%b
pause




批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-4-2 12:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pan542
新手上路





积分 9
发帖 8
注册 2006-12-15
状态 离线
『第 4 楼』:  

好像显示没效果啊?

2010-4-2 13:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 5 楼』:  

运行这个进行测试:
@echo off
echo 添加注册表>d:\179.txt
reg add "HKLM\SOFTWARE\信息\路径" /ve /d "C:\Program Files\信息" /f>>d:\179.txt
echo 返回注册表>>d:\179.txt
for /F "skip=4 tokens=2,*" %%a in ('reg query "HKLM\SOFTWARE\信息\路径" /ve') do echo %%b>>d:\179.txt
echo 删除注册表>>d:\179.txt
reg delete "HKLM\SOFTWARE\信息" /f>>d:\179.txt
pause
查看d:\179.txt



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-4-2 14:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pan542
新手上路





积分 9
发帖 8
注册 2006-12-15
状态 离线
『第 6 楼』:  

非常感谢Hanyeguxing的细心解答。
不过我主要想显示"C:\Program Files\信息"这部分内容

2010-4-2 17:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 7 楼』:  

5楼的代码是供你测试的,你运行3楼的代码没有正确显示吗?
那你把运行3楼代码后的结果贴上来
最好也运行5楼的代码,把179.txt的内容贴出来



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-4-2 17:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pan542
新手上路





积分 9
发帖 8
注册 2006-12-15
状态 离线
『第 8 楼』:  

一开始运行3楼的2个代码都只显示“请按任意键继续。。。”

再运行5楼的代码也只显示“请按任意键继续。。。”

179.txt显示的内容如下:
“添加注册表

操作成功返回注册表
删除注册表

操作成功”


再运行3楼的代码就显示:
错误: 系统找不到指定的注册表项或值
请按任意键继续. . .

2010-4-6 09:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 9 楼』:  

如果只要显示:
@echo off
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query "HKLM\SOFTWARE\信息\路径" /ve') do set c=%%a&echo|echo %%c:~-1%%:%%b
pause
[ Last edited by Hanyeguxing on 2010-4-6 at 17:18 ]



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-4-6 12:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 10 楼』:  

如果要使用这个路径做变量:
@echo off
for /f "skip=4 tokens=1,2 delims=:" %%a in ('reg query "HKLM\SOFTWARE\信息\路径" /ve') do set c=%%a&call set c=%%c:~-1%%:%%b
echo %c%
pause
[ Last edited by Hanyeguxing on 2010-4-6 at 17:18 ]



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-4-6 15:02
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pan542
新手上路





积分 9
发帖 8
注册 2006-12-15
状态 离线
『第 11 楼』:  

在家测试成功~
十分感谢!!!

2010-4-6 22:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: