![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-11 16:58 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]如何用reg 来查找注表某个值,并取出某个值?? |
| 可打印版本 814 / 9 |
| 第1楼 workmanlr | 发表于 2009-04-19 13:27 |
| 新手上路 发帖 7 积分 7 | |
|
[求助]如何用reg 来查找注表某个值,并取出某个值?? 如题:
我想用reg 来查这个值: Distinguished-Name 并出Distinguished-Name 数据中的一部分: CN=张三,OU=ddd,OU=kkk,OU=uuuDC=Freedom,DC=org 我想要取出 张三 这个值,并付于某个变量: set name=张三 关键是怎么取出张三这个值来?? |
|
| 第2楼 jj65535 | 发表于 2009-04-19 13:54 |
| 新手上路 发帖 15 积分 19 | |
|
你这种没环境!没准确参数!
高手们很难给你答案的! 我这个新人发个例子!自己想................ 注册表环境!(操作系统WIN2003) Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER] "Distinguished-Name"="CN=张三,OU=ddd,OU=kkk,OU=uuuDC=Freedom,DC=org" 运行环境:WIN2003 CMD for /f "tokens=1 delims=," %%l in ('reg QUERY "HKEY_CURRENT_USER" /v "Distinguished-Name"^|find /i "CN="') do ( for /f "tokens=2 delims==" %%m in ("%%l") do set name=%%m ) echo %name% |
|
| 第3楼 workmanlr | 发表于 2009-04-19 14:39 |
| 新手上路 发帖 7 积分 7 | |
|
谢谢,操作系统是xp
|
|
| 第4楼 workmanlr | 发表于 2009-04-19 14:44 |
| 新手上路 发帖 7 积分 7 | |
|
我把你写的代码加存为aaa.bat
执行结果如下: C:\>aaa C:\>for /F "tokens=1 delims=," %l in ('reg QUERY "HKEY_CURRENT_USER" /v "Disting uished-Name"|find /i "CN="') do (for /F "tokens=2 delims==" %m in ("%l") do set name=%m ) 错误: 系统找不到指定的注册表项或值 C:\>echo ECHO 处于打开状态。 |
|
| 第5楼 workmanlr | 发表于 2009-04-19 14:54 |
| 新手上路 发帖 7 积分 7 | |
|
你这个是要找到具体的键值,
因为这个键值是在S-1-5-21-3066645261-2536786027-3422793319-1117下面的,因为每台电脑的sid都不一样。所以不能用你这个方法来找。 还是谢谢你 |
|
| 第6楼 workmanlr | 发表于 2009-04-19 23:07 |
| 新手上路 发帖 7 积分 7 | |
|
各位大侠帮帮忙
|
|
| 第7楼 jj65535 | 发表于 2009-04-20 03:13 |
| 新手上路 发帖 15 积分 19 | |
|
你当然不能照抄啊!我的只是例子
注册表环境!(操作系统WIN2003) 我注明是这注册表例子为例子! Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER] "Distinguished-Name"="CN=张三,OU=ddd,OU=kkk,OU=uuuDC=Freedom,DC=org" 你自己不能完成就要提供完整的调试环境! 注册表的完整目标位置!要没每台机器都不同就要提供多个成为比较例子的注册表例子 你这种不是固定注册表项现象 按我的水平只能用regedit 来导出大项来用其他命令来查找判断! 看其他高手的意见吧 |
|
| 第8楼 workmanlr | 发表于 2009-04-20 05:55 |
| 新手上路 发帖 7 积分 7 | |
|
恩,现在就是不是固定注册表项,有什么方法吗??
|
|
| 第9楼 workmanlr | 发表于 2009-04-20 11:30 |
| 新手上路 发帖 7 积分 7 | |
|
有办法实现吗??
|
|
| 第10楼 newxso | 发表于 2009-04-20 18:51 |
| 初级用户 发帖 101 积分 73 来自 GZ | |
|
在Win2K工具包中有一个用来搜索注册表的工具,从整个注册表中搜索某字符串,只需几十秒时间:
dureg /cr Find the size of HKEY_CLASSES_ROOT /cu Find the size of HKEY_CURRENT_USER /u Find the size of HKEY_USERS /lm Find the size of HKEY_LOCAL_MACHINE /a All. Find the size of entire registry. </Subtree switch> "registry path" Find the size of any registry key e.g. dureg /lm "software\microsoft" finds the size of the HKLM\Software\Microsoft key /s "string" Search for string in the registry e.g. dureg /s "video" finds all occurrences of "video" in the registry /s "string" Search for string in the registry subtree e.g. dureg /lm /s "video" finds all occurrences of "video" in the HKLM (to stop a search, press Ctrl+Break) http://support.microsoft.com/kb/317382 例如:dureg /s "Distinguished-Name" 可以从注册表中搜索包含 Distinguished-Name 字符串的项目,可以用定向符把结果保存到临时文件,或嵌套到 for 语句中处理结果。 [ Last edited by newxso on 2009-4-20 at 20:00 ] 附件 dureg.rar (14.74 KiB) |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |