Board logo

标题: [注册表类] 批处理如何搜索注册表并把结果存入变量调用? [打印本页]

作者: kukukuwl    时间: 2010-1-20 19:51     标题: 批处理如何搜索注册表并把结果存入变量调用?

A、B、C为变量

1、搜索HKEY_CLASSES_ROOT\CLSID\下含有A项的路径,(注意:1、A是项,非数据。2、有可能是二级路径、或者三级别路径),在搜索出来的注册表路径后面加入项B。(即得到的结果为HKEY_CLASSES_ROOT\CLSID\...\A\B\)
2、将上面结果存入C。
3、修改C项下面的名称为"(默认)",类型为字符串值,的数据为"131488".(C是项,名称为“(默认)"的是C项下面的键名)

一位朋友给出的答案是:
  1. @echo off
  2. for /f "delims=" %%i in ('reg query "HKCR\CLSID"') do (
  3. echo %%i|findstr "A项"&&2>nul reg add "%%i\B项" /f /ve /t REG_SZ /d 131488
  4. )
复制代码
但我调试没成功,还望这里的高手帮忙。
作者: Batcher    时间: 2010-1-20 21:24

你是不是复制错了?不管代码能否解决这个问题,从语法上来说应该是这样:
  1. echo %%i|findstr "A项" 2>nul && reg add "%%i\B项" /f /ve /t REG_SZ /d 131488
复制代码

作者: kukukuwl    时间: 2010-1-21 18:54

呵呵  我也不知道问题在那里  就是解决不了问题
作者: kukukuwl    时间: 2010-1-21 19:07

有个疑问,&& 在语句中起什么作用?  
findstr "A项" 2   该句后面的数字2有何作用?
希望大虾告之。

[ 本帖最后由 kukukuwl 于 2010-1-21 19:24 编辑 ]
作者: a590687    时间: 2010-1-21 20:36     标题: 回复 4楼 的帖子

最好在论坛搜索"新手入门"先看一下 有关&&的讲解
>nul 表示:不显示前面命令的正确输出
2>nul 正好相反,
批处理 reg咱还没学呢,嘻嘻
作者: Batcher    时间: 2010-1-21 21:21     标题: 回复 4楼 的帖子

参考:批处理常用符号详解
http://www.bathome.net/viewthrea ... amp;page=3#pid25363
http://www.bathome.net/thread-1205-1-2.html

批处理中的重定向符号以及句柄的使用方法和讲解
http://www.bathome.net/thread-3296-1-1.html
作者: kukukuwl    时间: 2010-1-22 21:05     标题: 回复 6楼 的帖子

谢谢你,我会认真阅读的。




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2