用命令行方式管理注册表 [ 网站地图 ]

发表于:2010-6-25 浏览:108 作者: 来源:互联网

关键字:注册表,管理,命令行

描述:  命令行方式直接修改注册表   一、CMD   cmd是windows系统中的一个小得如鸽子蛋一样的程序,是一个所谓命令行控制台。有两条进入该程序的通道:第一,鼠标点击"开始->运行",在出现的编辑框中

  命令行方式直接修改注册表

  一、CMD

  cmd是windows系统中的一个小得如鸽子蛋一样的程序,是一个所谓命令行控制台。有两条进入该程序的通道:第一,鼠标点击"开始->运行",在出现的编辑框中键入"cmd",然后点击"确定";第二,在启动windows2000的时候,按F8进入启动选择菜单,移动光条或键入数字至安全模式的命令行状态。出现的窗口是一个在win9x系统常见的那种msdos方式的界面――一个黑乎乎的窗口.甚至还没有msdos方式的窗口耐看:连常用的工具条都没有放上.我真想不通,贵为最新的操作系统,因何还保留似乎是石器时代的dos界面呢?像往常一样,习惯性低在命令后面键入:cmd/?,想看看会提示些什么?

  孰料出现的东西使我大吃一惊:1.这些信息是中文的,要知道原来纯dos环境可不会直接支持中文呀!2.有相当详细的帮助信息.3.界面虽然是命令行的,但却可以对很多深层次的项目进行操作,,例如修改注册表等等.后来的使用也证明,cmd实际上也能直接调用图形界面的程序,并在调用结束后可以返回到命令行界面.

  尽管微软把这个工具当做命令解释器一个新的实例,但使用的方法却和原来的dos没有区别,打开命令行窗口之后,可以找到与dos相同的系统提示符号C:/>,命令必须键入在这个提示符的后面,以回车键确认.

  完整的语法如下:

  CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]

  [[/S] [/C | /K] string]

  各个参数的含义:

  CMD:是命令名称,这可省略.以下是命令所用的参数或开关.

  /C 执行字符串指定的命令然后终断

  /K 执行字符串指定的命令但保留

  /S 在 /C 或 /K 后修改字符串处理(见下)

  /Q 关闭回应

  /D 从注册表中停用执行 AutoRun 命令(见下)

  /A 使向内部管道或文件命令的输出成为 ANSI

  /U 使向内部管道或文件命令的输出成为 Unicode

  /T:fg 设置前景/背景颜色(详细信息,请见 COLOR /?)

  /E:ON 启用命令扩展(见下)

  /E:OFF 停用命令扩展(见下)

  /F:ON 启用文件和目录名称完成字符 (见下)

  /F:OFF 停用文件和目录名称完成字符(见下)

  /V:ON 将 c 作为定界符启动延缓环境变量扩展。如: /V:ON 会

  允许 !var! 在执行时允许 !var! 扩展变量 var。var 语法

  在输入时扩展变量,这与在一个 FOR 循环内不同。

  /V:OFF 停用延缓的环境扩展。

  请注意,如果字符串有引号,可以接受用命令分隔符 ‘&&‘ 隔开

  的多个命令。并且,由于兼容原因,/X 与 /E:ON 相同,/Y 与

  /E:OFF 相同,并且 /R 与 /C 相同。忽略任何其它命令选项。

  如果指定了 /C 或 /K,命令选项后的命令行其余部分将作为命令行处理;在这种情况下,会使用下列逻辑处理引号字符("):

  1. 如果符合下列所有条件,那么在命令行上的引号字符将被

  保留:

  - 不带 /S 命令选项

  - 整整两个引号字符

  - 在两个引号字符之间没有特殊字符,特殊字符为下列中的一个: <>()@^|

  - 在两个引号字符之间有至少一个空白字符

  - 在两个引号字符之间有至少一个可执行文件的名称。

  2. 否则,老办法是,看第一个字符是否是一个引号字符,如果是,舍去开头的字符并删除命令行上 的最后一个引号字符, 保留最后一个引号字符之后的文字。如果 /D 未在命令行上被指定,当 CMD.EXE 开始时,它会寻找以下 REG_SZ/REG_EXPAND_SZ 注册表变量。如果其中一个或两个都存在,这两个变量会先被执行。

  HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorAutoRun

  和/或

  HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorAutoRun

  命令扩展是按默认值启用的。您也可以使用 /E:OFF,为某一特定调用而停用扩展。您可以在机器上和/或用户登录会话上启用或停用 CMD.EXE 所有调用的扩展,这要通过设置使用REGEDT32.EXE 的注册表中的一个或两个 REG_DWORD 值:

  HKEY_LOCAL_MACHINESoftwareMicrosoftCommand ProcessorEnableExtensions

  和/或

  HKEY_CURRENT_USERSoftwareMicrosoftCommand ProcessorEnableExtensions

  到 0x1 或 0x0。 用户特定设置比机器设置有优先权。命令行命令选项比注册表设置有优先权。

  原来的dos中有所谓的内部命令和外部命令,在cmd中,引入了命令行扩展,你可以在cmd窗口中直接执行下面的扩展部分,扩展部分之前不必加cmd.

  命令行扩展包括对下列命令所做的更改和/或添加:

  DEL 或 ERASE

  COLOR

  CD 或 CHDIR

  MD 或 MKDIR

  PROMPT

  PUSHD

  POPD

  SET

  SETLOCAL

  ENDLOCAL

  IF

  FOR

  CALL

  SHIFT

  GOTO

START (同时包括对外部命令调用所做的更改)

  ASSOC

  FTYPE

  有关详细信息,请键入 HELP 命令名。

  二、REG

  可以 WindowsXP提供的reg命令行就可以做到。

  Reg添加、更改和显示注册表项中的注册表子项信息和值。

  若要查看该命令语法,请单击以下命令:

  reg add

  将新的子项或项添加到注册表中。

  语法

  reg add KeyName [/v EntryName|/ve] [/t DataType] [/s separator] [/d value] [/f]

  参数

  KeyName

  指定子项的完全路径。对于远程计算机,请在 \\ComputerName\PathToSubkey 中的子项路径前包含计算机名称。忽略 ComputerName 会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为 HKLM、HKCU、HKCR、HKU 以及 HKCC。

  /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_DEscrīptOR

  REG_EXPAND_SZ

  /s separator

  指定用于分隔多个数据实例的字符。当 REG_MULTI_SZ 指定为数据类型且需要列出多个项时,请使用该参数。如果没有指定,将使用默认分隔符为 \。

  /d value

  指定新注册表项的值。

  /f

  不用询问信息而直接添加子项或项。

  /?

  在命令提示符显示帮助。

  注释

  该操作不能添加子树。该版本的 Reg 在添加子项时无需请求确认。

下表列出了 reg add 操作的返回值。 值 说明

  0 成功

  1 失败

  范例

  下列范例说明了如何使用 reg add 命令:

  reg add \hklm\software\myco /v data /t reg_binary /d fe340ead

  reg add "hkcu\software\microsoft\winmine" /v Name3 /t reg_sz /d Anonymous

  reg add "hkcu\software\microsoft\winmine" /v Time3 /t reg_dword /d 5

  reg compare

{[csc:pagelist]}

  比较指定的注册表子项或项。

  语法

  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

  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

  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 命令:

  reg delete "hkcu\software\microsoft\winmine" /v Name1

  reg delete "hkcu\software\microsoft\winmine" /v Time1

  reg delete "hkcu\software\microsoft\winmine" /va

  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

  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

  reg load

  将保存的子项和项写回到注册表的不同子项中。其目的是保存到一个临时文件中,而该文件可用于注册表项的疑难解答或编辑注册表项。

  语法

  reg load KeyName FileName

  参数

  KeyName

  指定子项的完全路径。对于远程计算机,请在 \\ComputerName\PathToSubkey 中的子项路径前包含计算机名称。忽略 ComputerName 会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为 HKLM、HKCU、HKCR、HKU 以及 HKCC。


站长资讯网 做中国最丰富的资讯网站 沪ICP备05004089号