当前位置: 移动技术网 > IT编程>网络>Dos/Bat > Reg命令使用详解 批处理操作注册表必备

Reg命令使用详解 批处理操作注册表必备

2017年12月08日  | 移动技术网IT编程  | 我要评论
只有在别无选择的情况下,才直接编辑注册表。注册表编辑器会忽略标准的安全措施,从而使得这些设置会降低性能、破坏系统,甚至要求用户重新安装windows。可以利用“控制面板”或

只有在别无选择的情况下,才直接编辑注册表。注册表编辑器会忽略标准的安全措施,从而使得这些设置会降低性能、破坏系统,甚至要求用户重新安装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%\system32\systray.exe" /f(开机启动音量控制)
  cmd /k reg add "hklm\software\microsoft\windows nt\currentversion\winlogon" /v shell /t reg_sz /d "%systemroot%\explorer.exe" /f(开机启动explorer外壳程序)
  cmd /k reg add "hklm\software\microsoft\windows\currentversion\run" /v soundman /t reg_sz /d "%systemroot%\soundman.exe" /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\binaries\msconfig.exe" /t reg_sz /f
  (运行msconfig提示找不到文件)
  cmd /k reg add "hklm\software\microsoft\windows\currentversion\app paths\wmplayer.exe" /ve /d "%programfiles%\windows media player\wmplayer.exe" /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" /v ctfmon.exe /t reg_sz /d "%systemroot%\system32\ctfmon.exe" /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 options\taskmgr.exe" /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 options\ctfmon.exe" /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\regbackups\wmbkup.reg

  6,reg import 将包含导出的注册表子项、项和值的文件复制到本地计算机的注册表中
  语法:reg import filename
  参数
  filename
  指定将复制到本地计算机注册表中的文件的名称和路径。必须预先使用reg export命令创建该文件。
  /?
  在命令提示符显示帮助。

  注释
  下表列出了reg import操作的返回值。值说明
  0成功
  1失败

  范例
  下面的范例说明了如何使用reg import命令:
  reg import hkcu\software\microsoft\winmine" c:\data\regbackups\wmbkup.reg

  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 中的子项路径前包含计算机名称。忽略 computername 会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为 hklm、hkcu、hkcr、hku 以及 hkcc。
  filename
  指定所创建的文件的名称和路径。如果未指定路径,则使用当前路径。
  /?
  在命令提示符显示帮助。

  注释
  下表列出了 reg save 操作的返回值。 值 说明
  0 成功
  1 失败

  范例
  下面的范例说明了如何使用 reg save 命令:
  reg save "hkcu\software\microsoft\winmine" wmbkup.hiv

  11,reg unload 使用 reg load 操作删除已加载的部分注册表
  语法:reg unload keyname
  参数
  keyname
  指定子项的完全路径。对于远程计算机,请在 \\computername\pathtosubkey 中的子项路径前包含计算机名称。忽略 computername 会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为 hklm、hkcu、hkcr、hku 以及 hkcc。
  /?
  在命令提示符显示帮助。

  注释
  下表列出了 reg unload 操作的返回值。 值 说明
  0 成功
  1 失败

  范例
  下面的范例说明了如何使用 reg unload 命令:
  reg unload "hkcu\software\microsoft\winminebk2"

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网