admin 管理员组

文章数量: 887031


2024年2月21日发(作者:函数指针指向什么)

计算机菜鸟金品

批处理注册表操作教程

学了上面的批处理基础教程相信大家已经基本了解了批处理的用法,但是你知道吗,批处理还可以修改注册表,想象一下,我们优化电脑的时候是不是经常要将一大堆的注册表优化文件一个个导入注册表啊(当然你会说你有兔子、优化大师一键优化功能,但是经常用这些优化软件优化你能学到什么呢,再当然,你也可将一堆注册表优化文件合成一个)学了批处理你是不是有种什么都想用批处理解决的冲动呢。下面我们就一起看看批处理怎么修改注册表。

添加注册表键值:

REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]

KeyName [Machine]FullKey

Machine 远程机器名 - 忽略默认到当前机器。远程机器上只有 HKLM

和 HKU。

FullKey ROOTKEYSubKey

ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]

SubKey 所选 ROOTKEY 下注册表项的完整名。

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

/ve 为注册表项添加空白值名(默认)。

/tRegKey 数据类型

[ REG_SZ | REG_MULTI_SZ | REG_EXPAND_SZ |

REG_DWORD | REG_QWORD | REG_BINARY | REG_NONE ]如果忽略,则采用 REG_SZ。

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

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

/f不用提示就强行覆盖现有注册表项。

例如:

REG ADD ABCHKLMSoftwareMyCo

添加远程机器 ABC 上的一个注册表项 HKLMSoftwareMyCo

REG ADD HKLMSoftwareMyCo /v Data /t REG_BINARY /d fe340ead

添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

第 - 1 - 页 共 7 页

计算机菜鸟金品

REG ADD HKLMSoftwareMyCo /v MRU /t REG_MULTI_SZ /d fax0mail

添加一个值(名称: MRU,类型: REG_MUTLI_SZ,数据: fax0mail00)

REG ADD HKLMSoftwareMyCo /v Path /t REG_EXPAND_SZ /d

^%systemroot^%

添加一个值(名称: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)

注意: 在扩充字符串中使用插入符号 ( ^ )

再例如修改IE首页:

@echo off

reg add "HKEY_CURRENT_USERSoftwareMicrosoftInternet Explor-erMain" /v "Start Page" /t reg_sz /d /f

reg add "HKEY_CURRENT_USERSoftwareMicrosoftInternet Explor-erMain" /v "Default_Page_URL" /t reg_sz /d /f

pause

删除键值:

REG DELETE KeyName [/v ValueName | /ve | /va] [/f]

KeyName [Machine]FullKey

Machine 远程机器名 - 忽略当前机器的默认值。

远程机器上只有 HKLM 和 HKU。

FullKey ROOTKEYSubKey

ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]

SubKey 所选 ROOTKEY 下的注册表项的全名。

ValueName 所选项下的要删除的值的名称。

省略时,该项下的所有子项和值都会被删除。

/ve删除空白值名称的值(默认)。

/va删除该项下的所有值。

/f 不用提示就强行删除。

例如:

REG DELETE HKLMSoftwareMyCoMyAppTimeout

删除注册表项 Timeout 及其所有子项和值

REG DELETE ZODIACHKLMSoftwareMyCo /v MTU

删除 ZODIAC 上 MyCo 下的注册表项 MTU

HK小车:[ HKLM | HKCU | HKCR | HKU | HKCC ]

这几个东西是不是看的有点晕?刚开始我也晕,咋一看不认识,其实它们都是注册表根键的缩写,如HKLM是HKEY_LOCAL_MACHINE的第 - 2 - 页 共 7 页

计算机菜鸟金品

缩写。

查询注册表:

REG QUERY KeyName [/v [ValueName] | /ve] [/s] [/f Data [/k] [/d] [/c] [/e]] [/t

Type] [/z] [/se Separator]

KeyName [Machine]FullKey

Machine - 远程机器名称,省略当前机器的默认值。在远程机器上只有

HKLM 和 HKU 可用。

FullKey - 以 ROOTKEYSubKey 名称形式

ROOTKEY - [ HKLM | HKCU | HKCR | HKU | HKCC ]

SubKey - 在选择的 ROOTKEY 下的注册表项的全名

/v具体的注册表项值的查询。如果省略,会查询该项的所有值。

只有与 /f 开关一起指定的情况下,此开关的参数才是可选的。它指定

只在值名称中搜索。

/ve 查询默认值或空值名称(默认)。

/s循环查询所有子项和值(如 dir /s)。

/se 为 REG_MULTI_SZ 在数据字符串中指定分隔符(长度只为 1

个字符)。

默认分隔符为 "0"。

/f指定搜索的数据或模式。

如果字符串包含空格,请使用双引号。默认为 "*"。

/k指定只在项名称中搜索。

/d指定只在数据中搜索。

/c指定搜索时区分大小写。

默认搜索为不区分大小写。

/e指定只返回完全匹配。

默认是返回所有匹配。

/t指定注册表值数据类型。

有效的值是:

REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ,

REG_DWORD, REG_QWORD, REG_BINARY, REG_NONE

默认为所有类型。

/z详细: 显示值名称类型的数字等值。

示例:

REG QUERY HKLMSoftwareMicrosoftResKit /v Version

第 - 3 - 页 共 7 页

计算机菜鸟金品

显示注册表值版本的值

REG QUERY ABCHKLMSoftwareMicrosoftResKitNtSetup /s

显示远程机器 ABC 上的、在注册表项设置下的所有子项和值

REG QUERY HKLMSoftwareMicrosoftResKitNtSetup /se #

用 "#" 作为分隔符,显示类型为 REG_MULTI_SZ 的所有值名称的所有

子项和值。

REG QUERY HKLM /f SYSTEM /t REG_SZ /c /e

以区分大小写的形式显示项、值和数据和数据类型 REG_SZ

的、在 HKLM 更目录下的、"SYSTEM" 出现的精确次数

REG QUERY HKCU /f 0F /d /t REG_BINARY

显示在 HKCU 根目录下、数据类型为 REG_BINARY 的数据的项、值和

数据的 "0F" 出现的次数。

REG QUERY HKLMSOFTWARE /ve

显示在 HKLMSOFTWARE 下的项、值和数据(默认)

复制注册表:

REG COPY KeyName1 KeyName2 [/s] [/f]

KeyName [Machine]FullKey

Machine 远程机器名 - 忽略当前机器的默认值。

远程机器上只有 HKLM 和 HKU。

FullKey ROOTKEYSubKey

ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]

SubKey 所选 ROOTKEY 下的注册表项的全名。

/s 复制所有子项和值。

/f 不用提示就强行复制。

例如:

REG COPY HKLMSoftwareMyCoMyApp

HKLMSoftwareMyCoSaveMyApp /s

将注册表项 MyApp 下的所有子项和值复制到注册表项 SaveMyApp

REG COPY ZODIACHKLMSoftwareMyCo HKLMSoftwareMyCo1

将 ZODIAC 上注册表项 MyCo 下的所有值复制到当前机器上的

注册表项 MyCo1

第 - 4 - 页 共 7 页

计算机菜鸟金品

保存注册表中的内容:

REG SAVE KeyName FileName [/y]

FileName 要保存的磁盘文件名。如果没有指定路径,文件会在调用进程的当前文件夹中得到创建。

/y不用提示就强行覆盖现有文件。

例如:

REG SAVE HKLMSoftwareMyCoMyApp

将配置单元 MyApp 保存到当前文件夹中的文件

还原文件到注册表

REG RESTORE KeyName FileName

KeyName ROOTKEYSubKey (只是本地机器)

ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]

SubKey 要将配置单元文件还原到的注册表项全名。覆盖现有项的值和子项。

FileName 要还原的配置单元文件名。

您必须使用 REG SAVE 来创建这个文件。

例如:

REG RESTORE HKLMSoftwareMicrosoftResKit

还原文件 ,覆盖注册表项 ResKit

加载注册表单元:

REG LOAD KeyName FileName

KeyName ROOTKEYSubKey (只是本地机器)

ROOTKEY [ HKLM | HKU ]

SubKey 要将配置单元文件加载进的注册表项名称。创建一个新的注册表项。

FileName 要加载的配置单元文件名。您必须使用 REG SAVE 来创建这个文件。

例如:

REG LOAD HKLMTempHive

将文件 加载到注册表项 HKLMTempHive

第 - 5 - 页 共 7 页

计算机菜鸟金品

卸载配置单元:

REG UNLOAD KeyName

KeyName ROOTKEYSubKey (只是本地机器)

ROOTKEY [ HKLM | HKU ]

SubKey 要卸载的配置单元的注册表项名称。

例如:

REG UNLOAD HKLMTempHive

卸载 HKLM 中的配置单元 TempHive

比较注册表

REG COMPARE KeyName1 KeyName2 [/v ValueName | /ve] [Output] [/s]

KeyName [Machine]FullKey

Machine 远程机器名 - 省略当前机器的默认值。

远程机器上只有 HKLM 和 HKU。

FullKey ROOTKEYSubKey

如果没有指定 FullKey2,FullKey2 则跟 FullKey1 相同。

ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]

SubKey 所选 ROOTKEY 下的注册表项的全名。

ValueName 所选注册表项下的要比较的值的名称。

省略时,该项下的所有值都会得到比较。

/ve比较空白值名称的值(默认)。

/s 比较所有子项和值。

Output [/oa | /od | /os | /on]

省略时,只显示不同的结果。

/oa 显示所有不同和匹配结果。

/od 只显示不同的结果。

/os 只显示匹配结果。

/on 不显示结果。

返回代码:

0 - 成功,比较的结果相同

1 - 失败

2 - 成功,比较的结果不同

注意:

第 - 6 - 页 共 7 页

计算机菜鸟金品

每个输出行前面显示的符号定义为:

= 表示 FullKey1 等于 FullKey2 数据

< 指的是 FullKey1 数据,与 FullKey2 数据不同

> 指的是 FullKey2 数据,与 Fullkey1 数据不同

例如:

REG COMPARE HKLMSoftwareMyCoMyApp

HKLMSoftwareMyCoSaveMyApp

将注册表项 MyApp 下的所有值跟 SaveMyApp 比较

REG COMPARE HKLMSoftwareMyCo HKLMSoftwareMyCo1 /v Version

比较注册表项 MyCo 和 MyCo1 下的值 Version

REG COMPARE ZODIACHKLMSoftwareMyCo . /s

将 ZODIAC 上 HKLMSoftwareMyCo 下的所有子项和值和当前机器上

的相同项比较

输出注册表文件

REG EXPORT KeyName FileName

FileName 要导出的磁盘文件名。

/y不用提示就强行覆盖现有文件。

例如:

REG EXPORT HKLMSoftwareMyCoMyApp

将注册表项 MyApp 的所有子项和值导出到文件

导入注册表

REG IMPORT FileName

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

例如:

REG IMPORT

从文件 导入注册表项

第 - 7 - 页 共 7 页


本文标签: 注册表 文件 名称 指定