Reg命令使⽤详解批处理操作注册表必备
只有在别⽆选择的情况下,才直接编辑注册表。注册表编辑器会忽略标准的安全措施,从⽽使得这些设置会降低性能、破坏系统,甚⾄要求⽤户重新安装Windows。可以利⽤“控制⾯板”或“Microsoft管理控制台(MMC)”中的程序安全更改多数注册表设置。如果必须直接编辑注册表,则请⾸先将其备份。使⽤Reg直接编辑本地或远程计算机的注册表。这些更改有可能造成计算机⽆法操作并需要重新安装操作系统。所以不要直接编辑注册表,⽽应尽可能利⽤“控制⾯板”或“Microsoft管理控制台(MMC)”更改注册表。有些操作可以查看或配置本地或远程计算机的注册表项,⽽另外⼀些则只允许配置本地计算机的注册表设置。同时,远程访问注册表也可能会限制⽤于某操作的参数。请检查每个操作的语法以便验证该操作可以⽤于远程计算机,以及验证可⽤于那种情况下的参数。
reg命令是WindowsXP提供的,它可以添加、更改和显⽰注册表项中的注册表⼦项信息和值。
1,reg add 将新的⼦项或项添加到注册表中
语法:reg add KeyName [/v EntryName|/ve] [/t DataType] [/s separator] [/d value] [/f]
参数
KeyName
指定⼦项的完全路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的⼦项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM、HKCU、HKCR、HKU以及HKCC。远程机器上只有 HKLM 和 HKU。
值说明
HKCR: HKEY_CLASSES_ROOT
HKCU: HKEY_CURRENT_USER
HKLM: HKEY_LOCAL_MACHINE
HKU: HKEY_USERS
HKCC: HKEY_CURRENT_CONFIG
/v EntryName
指定要添加到指定⼦项下的项名称。
/ve
指定添加到注册表中的项为空值。
/t DataType
指定项值的数据类型。DataType可以是以下⼏种类型:
REG_SZ
REG_MULTI_SZ
REG_DWORD_BIG_ENDIAN
REG_DWORD
REG_BINARY
REG_DWORD_LITTLE_ENDIAN
REG_LINK
REG_FULL_RESOURCE_DESCRIPTOR
REG_EXPAND_SZ
/s separator
指定⽤于分隔多个数据实例的字符。当REG_MULTI_SZ指定为数据类型且需要列出多个项时,请使⽤该参数。如果没有指定,将使⽤默认分隔符为"\0"。
/d value
指定新注册表项的值。
/f
不⽤询问信息⽽直接添加⼦项或项。
/?
在命令提⽰符显⽰帮助。
注释
该操作不能添加⼦树。该版本的Reg在添加⼦项时⽆需请求确认。
下表列出了reg add操作的返回值。值说明
0成功
1失败
/v 所选项之下要添加的值名。
/ve 为注册表项添加空⽩值名(默认)。
/t RegKey 数据类型 [ 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 不⽤提⽰就强⾏覆盖现有注册表项。
范例
(补充,cmd /k 为在运⾏中使⽤reg命令)
下列范例说明了如何使⽤reg add命令:
cmd /k reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\explorer\Advanced\Folder\Hidden\SHOWALL" /v Checkedvalue /t reg_dword /d 1 /f(显⽰隐藏的⽂件和⽂件夹)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v systray /t REG_SZ /d
"%SystemRoot%\" /f(开机启动⾳量控制)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d
"%SystemRoot%\" /f(开机启动explorer外壳程序)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v SoundMan /t REG_SZ /d
"%SystemRoot%\" /f(开机启动AC97⾳效管理员程序)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE" /ve /d
"%ProgramFiles%\Internet Explorer\IEXPLORE.EXE" /t REG_SZ /f
(UC房间打不开⼴播)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSCONFIG.EXE" /ve /d
"%SystemRoot%\PCHealth\HelpCtr\" /t REG_SZ /f
(运⾏MSConfig提⽰不到⽂件)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App " /ve /d
"%ProgramFiles%\Windows Media " /t REG_SZ /f
(不能正常调⽤WMP播放器的修复)
cmd /k reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WORDPAD.EXE" /ve /d
"%ProgramFiles%\Windows NT\Accessories\WORDPAD.EXE" /t REG_SZ /f
(不能正常调⽤写字板的修复)
cmd /k reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" / /t REG_SZ /d
"%SystemRoot%\" /f(开机启动输⼊法程序CTFMON)
cmd /k reg add "HKCU\ControlPanel\Desktop" /v WaitToKIllAppTimeOut /t REG_SZ /d 10000 /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%)
注意: 在扩充字符串中使⽤插⼊符号 ( ^ )
reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000 reg add HKLM\SYSTEM\CurrentControlSet\services\NlaSvc\Parameters\Internet /v EnableActiveProbing /t REG_DWORD /d 1
2,reg delete 从注册表删除项或⼦项
语法:reg delete KeyName [{/v EntryName|/ve|/va}] [/f]
参数
KeyName
指定⼦项的完全路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的⼦项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM、HKCU、HKCR、HKU以及HKCC。
/v EntryName
删除⼦项下的特定项。如果未指定项,则将删除⼦项下的所有项和⼦项。
/ve
指定只可以删除为空值的项。
/va
删除指定⼦项下的所有项。使⽤本参数不能删除指定⼦项下的⼦项。
/f
⽆需请求确认⽽删除现有的注册表⼦项或项。
/?
在命令提⽰符显⽰帮助。
注释
下表列出了reg delete操作的返回值。值说明
0成功
1失败
范例
下⾯的范例说明了如何使⽤reg delete命令:
cmd /k reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution
" /f(任务栏⾥的任务管理器为灰⾊)
cmd /k reg delete "HKLM\SOFTWARE\Microsoft\Shared Tools\MSConfig\startupreg" /f(删除MSConfig启动⾥的未勾选项⽬)
cmd /k reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution " /f(删除CTFMON的镜像劫持)
cmd /k reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\TrayNotify" /v IconStreams /f
cmd /k reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\TrayNotify" /v PastIconsStream /f(删除通知区域的历史记录)
3,reg compare ⽐较指定的注册表⼦项或项
语法:reg compare KeyName1 KeyName2 [/v EntryName | /ve] {[/oa]|[/od]|[/os]|[on]} [/s]
参数
KeyName
指定⼦项的完全路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的⼦项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM、HKCU、HKCR、HKU以及HKCC。如果指定远程计算机,则只可使⽤HKLM和HKU⼦⽬录树。
/v EntryName
⽐较⼦项下的特定项。
/ve
指定只可以⽐较没有值的项。
{[/oa]|[/od]|[/os]|[on]}
指定不同点和匹配点的显⽰⽅式。默认设置是/od。值说明
/oa指定显⽰所有不同点和匹配点。默认情况下,仅列出不同点。
/od指定仅显⽰不同点。这是默认操作。
/os指定仅显⽰匹配点。默认情况下,仅列出不同点。
/on指定不显⽰任何内容。默认情况下,仅列出不同点。
/s Separator
⽐较所有⼦项和项。
/?
在命令提⽰符显⽰帮助。
注释
下表列出了reg compare操作的返回值。值说明
0⽐较成功且结果相同。
1⽐较失败。
2⽐较成功并到不同点。
范例
下⾯的范例说明了如何使⽤reg compare命令:
reg compare "hkcu\software\microsoft\winmine" "hkcu\software\microsoft\winmine" /od /s
4,reg copy 将⼀个注册表项复制到本地或远程计算机的指定位置
语法:reg copy KeyName1 KeyName2 [/s] [/f]
参数
KeyName1
指定要复制⼦项的完整路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的⼦项路径前包含计算机名称。
忽略ComputerName会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM、HKCU、HKCR、HKU以及HKCC。如果指定远程计算机,则只可使⽤HKLM和HKU⼦⽬录树。
KeyName2
指定⼦项⽬的地的完整路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的⼦项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM、HKCU、HKCR、HKU以及HKCC。如果指定远程计算机,则只可使⽤HKLM和HKU⼦⽬录树。
/s
复制指定⼦项下的所有⼦项和项。
/f
⽆需请求确认⽽直接复制⼦项。
/?
在命令提⽰符显⽰帮助。
批处理文件注释 注释
该版本的Reg在复制⼦项时⽆须请求确认。
下表列出了reg copy操作的返回值。值说明
0成功
1失败
范例
下列范例说明了如何使⽤reg copy命令:
reg copy "hkcu\software\microsoft\winmine" "hkcu\software\microsoft\winminebk" /s /f
reg copy "hkcu\software\microsoft\winminebk" "hkcu\software\microsoft\winmine" /s
5,reg export 将指定⼦项、项和值的副本创建到⽂件中,以便将其传输到其它服务器
语法:reg export KeyName FileName
参数
KeyName
指定⼦项的完全路径。Export操作仅可在本地计算机上⼯作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM、HKCU、HKCR、HKU以及HKCC。
FileName
指定要导出⽂件的名称和路径。该⽂件必须具有.reg扩展名。
/?
在命令提⽰符显⽰帮助。
注释
下表列出了reg export操作的返回值。值说明
0成功
1失败
范例
下⾯的范例说明了如何使⽤reg export命令:
reg export "hkcu\software\microsoft\winmine" c:\data\
6,reg import 将包含导出的注册表⼦项、项和值的⽂件复制到本地计算机的注册表中
语法:reg import FileName
参数
FileName
指定将复制到本地计算机注册表中的⽂件的名称和路径。必须预先使⽤reg export命令创建该⽂件。
/?
在命令提⽰符显⽰帮助。
注释
下表列出了reg import操作的返回值。值说明
0成功
1失败
范例
下⾯的范例说明了如何使⽤reg import命令:
reg import hkcu\software\microsoft\winmine" c:\data\
7,reg load 将保存的⼦项和项写回到注册表的不同⼦项中
其⽬的是保存到⼀个临时⽂件中,⽽该⽂件可⽤于注册表项的疑难解答或编辑注册表项。
语法:reg load KeyName FileName
参数
KeyName
指定⼦项的完全路径。对于远程计算机,请在\\ComputerName\PathToSubkey中的⼦项路径前包含
计算机名称。忽略ComputerName会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为HKLM
8,reg query 返回注册表的⼦项下的项和下⼀层⼦项的列表
语法:reg query KeyName [{/v EntryName|/ve}] [/s]
参数
KeyName
指定⼦项的完全路径。对于远程计算机,请在 \\ComputerName\PathToSubkey 中的⼦项路径前包含计算机名称。忽略ComputerName 会导致默认对本地计算机进⾏操作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为 HKLM、HKCU、HKCR、HKU 以及 HKCC。如果指定远程计算机,则只可使⽤ HKLM 和 HKU ⼦⽬录树。
/v EntryName
返回特定的项及其值。该参数只返回直接位于指定⼦项的下⼀层中的项。将会不到当前⼦项下的⼦项中的项。如果省略EntryName,则将返回⼦项下的所有项。
/ve
指定仅返回为空值的项。
/s
将返回各个层中的所有⼦项和项。如果不使⽤该参数,将只返回下⼀层的⼦项和项。
/?
在命令提⽰符显⽰帮助。
注释
下表列出了 reg query 操作的返回值。值说明
0 成功
1 失败
范例
下⾯的范例说明了如何使⽤ reg query 命令:
reg query "hklm\system\currentcontrolset\control\session manager" /v maxstacktracedepth
reg query "hkcu\software\microsoft\winmine" /s
9,reg restore将保存的⼦项和项写回到注册表
语法:reg restore KeyName FileName
参数
KeyName
指定⼦项的完全路径。Restore 操作仅在本地计算机上⼯作。以相应的⼦⽬录树开始路径。有效⼦⽬录树为 HKLM、HKCU、HKCR、HKU 以及 HKCC。
FileName
指定将写回到注册表中的⽂件的名称和路径。必须使⽤带 .hiv 扩展名的 reg save 操作预先创建该⽂件。
/?
在命令提⽰符显⽰帮助。
注释
该操作⽤于覆盖已编辑的注册表项。编辑注册表项之前,请使⽤ reg save 操作保存⽗亲⼦项。如果编辑失败,则可以使⽤本操作恢复⼦项。
下表列出了 reg restore 操作的返回值。值说明
0 成功
1 失败
范例
下⾯的范例说明了如何使⽤ reg restore 命令:
reg restore "hkcu\software\microsoft\winmine" wmbkup.hiv
10,reg save将指定的⼦项、项和注册表值的副本保存到指定⽂件中。
语法
reg save KeyName FileName
参数
KeyName
指定⼦项的完全路径。对于远程计算机,请在 \\ComputerName\PathToSubkey 中的⼦项路径前包含计算机名称。忽略
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论