如何编辑已在生产的.cmd
脚本文件,以便让脚本删除 Windows 注册表中的某个注册表项?
首先,这可能吗?其次(如果不可能),我可以创建一个.reg
文件并使用该文件执行该文件.cmd
吗?
从脚本内部来看.cmd
,它不起作用:
del "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CurrentVersion\SampleKey]"
这种方法对我也不起作用:
cmd "\\networkdrive\regfiles\deleteSampleKey.reg"
然后从文件内部.reg
:
Windows Registry Editor Version 5.00
[
-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
]
答案1
我建议使用登记命令,而不是创建和导入 .reg 文件。
reg delete "HKCU\Some\Registry\Path" /f
或者
reg delete "HKLM\Some\Registry\Path" /f
这些命令可以直接输入到批处理(.cmd
)文件中。
答案2
答案3
我会避免使用其他脚本能在 .cmd 文件中使用登记命令。
你可以做类似的事情:
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\SomeProgram"
如果您只想删除特定条目,则应/v "EntryName"
在键的路径后添加一个参数。例如:
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\SomeProgram" /v "EntryName"
这两种情况都会导致在删除值之前发出警告。为了避免这种情况,您应该/f
在最后使用参数。
REG DELETE "HKEY_CURRENT_USER\SOFTWARE\SomeProgram" /f
答案4
我正在使用 Windows 7,这是我通过 CMD 获得的结果:
Fri 08/08/2014 8:13:51.72 | C:\Users\MrCMD
>reg.exe delete /?
REG DELETE KeyName [/v ValueName | /ve | /va] [/f]
KeyName [\\Machine\]FullKey
Machine Name of remote machine - omitting defaults to the current machine.
Only HKLM and HKU are available on remote machines.
FullKey ROOTKEY\SubKey
ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey The full name of a registry key under the selected ROOTKEY.
ValueName The value name, under the selected Key, to delete.
When omitted, all subkeys and values under the Key are deleted.
/ve delete the value of empty value name (Default).
/va delete all values under this key.
/f Forces the deletion without prompt.
Examples:
REG DELETE HKLM\Software\MyCo\MyApp\Timeout
Deletes the registry key Timeout and its all subkeys and values
REG DELETE \\ZODIAC\HKLM\Software\MyCo /v MTU
Deletes the registry value MTU under MyCo on ZODIAC
或者,我认为我们可以通过这个算法删除一些键或修改一些值:
- 将我们要删除/修改的键/值的注册表位置导出到文件(File01.reg)中。
- 编辑/修改适当的键/值并保存到新文件(File02.reg)。
- 将修改后的文件(File02.reg)导入Windows注册表。
参考出口登记。
Fri 08/08/2014 8:24:53.19 | C:\Users\mardir01
>reg.exe export /?
REG EXPORT KeyName FileName [/y]
Keyname ROOTKEY[\SubKey] (local machine only).
ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey The full name of a registry key under the selected ROOTKEY.
FileName The name of the disk file to export.
/y Force overwriting the existing file without prompt.
Examples:
REG EXPORT HKLM\Software\MyCo\MyApp File01.reg
Exports all subkeys and values of the key MyApp to the file File01.reg
参考 IMPORT 注册表。
>reg.exe import /?
REG IMPORT FileName
FileName The name of the disk file to import (local machine only).
Examples:
REG IMPORT File02.reg
Imports registry entries from the file File02.reg
欢迎提出更明智的改进想法。:) :) :)