风一样的男孩 发表于 2009-4-11 08:18:31

【关于注册表】Reg 命令总结

提权时总是要用到一些注册表命令,总是要查很麻烦,索性总结一下,以备下次使用。

1,REG QUERY /?

REG QUERY KeyName

KeyName    [\Machine\]FullKey

Machine远程机器名 - 忽略当前机器的默认值
            远程机器上只有 HKLM 和 HKU
FullKey格式为 ROOTKEY\SubKey
      ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
      SubKey所选 ROOTKEY 下的注册表项的全名
/v查询特定注册表项
      ValueName所选项下的要查询的值的名称
      省略时,该项下的所有值都会得到查询
/ve      查询默认值或空白值名称<no name>
/s      查询所有子项和值

例如:

REG QUERY HKLM\Software\Microsoft\ResKit /v Version
    显示注册表值 Version 的值

REG QUERY HKLM\Software\Microsoft\ResKit\rt\Setup /s
    显示注册表项 Setup 下的所有子项和值

2,REG ADD /?

REG ADD KeyName

KeyName[\\Machine\]FullKey
          远程机器的机器名 - 忽略默认到当前机器。
          远程机器上只有 HKLM 和 HKU。
          FullKeyROOTKEY\SubKey
          ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
          SubKey所选 ROOTKEY 下注册表项的完整名

/v      所选项之下要添加的值名

/ve      为注册表项添加空白值名<无名称>

/t      RegKey 数据类型
          [ REG_SZ    | REG_MULTI_SZ| REG_DWORD_BIG_ENDIAN    |
            REG_DWORD | REG_BINARY    | REG_DWORD_LITTLE_ENDIAN |
            REG_NONE| REG_EXPAND_SZ ]
          如果忽略,则采用 REG_SZ

/s      指定一个在 REG_MULTI_SZ 数据字符串中
          用作分隔符的字符
          如果忽略,则将 "\0" 用作分隔符

/d      要分配给添加的注册表 ValueName 的数据

/f      不用提示就强行改写现有注册表项

例如:

REG ADD \\ABC\HKLM\Software\MyCo
添加远程机器 ABC 上的一个注册表项 HKLM\Software\MyCo

REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
添加一个值(名称: MRU,类型: REG_MUTLI_SZ,数据: fax\0mail\0\0)

REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d %%systemroot%%
添加一个值(名称: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)
注意:在扩充字符串中使用双百分比符号( %% )

3,REG DELETE /?

REG DELETE KeyName

KeyName    [\\Machine\]FullKey
Machine远程机器名 - 忽略当前机器的默认值
远程机器上只有 HKLM 和 HKU
FullKeyROOTKEY\SubKey
ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey所选 ROOTKEY 下的注册表项的全名
ValueName所选项下的要删除的值的名称
            省略时,该项下的所有子项和值都会被删除
/ve      删除空白值名称<no name>的值
/va      删除该项下的所有值
/f      不用提示就强行删除

例如:

REG DELETE HKLM\Software\MyCo\MyApp\Timeout
删除注册表项 Timeout 及其所有子项和值

REG DELETE \\ZODIAC\HKLM\Software\MyCo /v MTU
删除 ZODIAC 上 MyCo 下的注册表项 MTU

4,REG COPY /?

REG COPY KeyName1 KeyName2

KeyName    [\\Machine\]FullKey
Machine远程机器名 - 忽略当前机器的默认值
远程机器上只有 HKLM 和 HKU
FullKeyROOTKEY\SubKey
ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey所选 ROOTKEY 下的注册表项的全名
/s      复制所有子项和值
/f      不用提示就强行复制

例如:

REG COPY HKLM\Software\MyCo\MyApp HKLM\Software\MyCo\SaveMyApp /s
将注册表项 MyApp 下的所有子项和值复制到注册表项 SaveMyApp

REG COPY \\ZODIAC\HKLM\Software\MyCo HKLM\Software\MyCo1
将 ZODIAC 上注册表项 MyCo 下的所有值
复制到当前机器上的注册表项 MyCo1

5,REG SAVE /?

REG SAVE KeyName FileName

KeyName    ROOTKEY\SubKey
ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey所选 ROOTKEY 下的注册表项的全名
FileName要保存的磁盘文件名。如果没有指定路径,
文件会在调用进程的当前文件夹中得到创建

例如:

REG SAVE HKLM\Software\MyCo\MyApp AppBkUp.hiv
将配置单元 MyApp 保存到当前文件夹中的文件 AppBkUp.hiv

6,REG RESTORE /?

REG RESTORE KeyName FileName

KeyName    ROOTKEY\SubKey (只是本地机器)
ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey要将配置单元文件还原到的注册表项全名。
改写现有项的值和子项
FileName要还原的配置单元文件名
您必须使用 REG SAVE 来创建这个文件

例如:

REG RESTORE HKLM\Software\Microsoft\ResKit NTRKBkUp.hiv
还原文件 NTRKBkUp.hiv,改写注册表项 ResKit

7,REG LOAD /?

REG LOAD KeyName FileName

KeyName    ROOTKEY\SubKey (只是本地机器的)
ROOTKEY[ HKLM | HKU ]
SubKey要将配置单元文件加载进的注册表项名称。创建一个新的注册表项
FileName要加载的配置单元文件名
您必须使用 REG SAVE 来创建这个文件

例如:

REG LOAD HKLM\TempHive TempHive.hiv
将文件 TempHive.hiv 加载到注册表项 HKLM\TempHive

8,REG UNLOAD /?

REG UNLOAD KeyName

KeyName    ROOTKEY\SubKey (只是本地机器的)
ROOTKEY[ HKLM | HKU ]
SubKey要卸载的配置单元的注册表项名称

例如:

REG UNLOAD HKLM\TempHive
卸载 HKLM 中的配置单元 TempHive

9,REG COMPARE /?

REG COMPARE KeyName1 KeyName2

KeyName    [\\Machine\]FullKey
Machine远程机器名 - 省略当前机器的默认值
远程机器上只有 HKLM 和 HKU
FullKeyROOTKEY\SubKey
如果没有指定 FullKey2,FullKey2 则跟 FullKey1 相同
ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey所选 ROOTKEY 下的注册表项的全名
ValueName所选注册表项下的要比较的值的名称
省略时,该项下的所有值都会得到比较
/ve      比较空白值<no name>名称的值
/s      比较所有子项和值
Output   
            省略时,只显示不同的结果
    /oa      显示所有不同和匹配结果
    /od      只显示不同的结果
    /os      只显示匹配结果
    /on      不显示结果

返回代码:

0 - 成功,比较的结果相同
1 - 失败
2 - 成功,比较的结果不同

例如:

REG COMPARE HKLM\Software\MyCo\MyApp HKLM\Software\MyCo\SaveMyApp
将注册表项 MyApp 下的所有值跟 SaveMyApp 比较

REG COMPARE HKLM\Software\MyCo HKLM\Software\MyCo1 /v Version
比较注册表项 MyCo 和 MyCo1 下的值 Version

REG COMPARE \\ZODIAC\HKLM\Software\MyCo \\. /s
将 ZODIAC 上 HKLM\Software\MyCo 下的
所有子项和值和当前机器上的相同项比较

10,REG EXPORT /?

REG EXPORT KeyName FileName

Keyname    ROOTKEY\SubKey (local machine only)
ROOTKEY[ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey所选 ROOTKEY 下的注册表项的全名
FileName要导出的磁盘文件名

例如:

REG EXPORT HKLM\Software\MyCo\MyApp AppBkUp.reg
将注册表项 MyApp 的所有子项和值导出到文件 AppBkUp.reg

11,REG IMPORT /?

REG IMPORT FileName

FileName要导入的磁盘文件名(只用于本地机器)

例如:

REG IMPORT AppBkUp.reg
从文件 AppBkUp.reg 导入注册表项
页: [1]
查看完整版本: 【关于注册表】Reg 命令总结