通过批处理文件检查 Windows 注册表中是否存在某个键

通过批处理文件检查 Windows 注册表中是否存在某个键

我担任公共服务部门的 IT 支持工作。

我们经常要完成的工作之一是安装一些由我们自己的开发人员开发的软件。我们通常将其作为程序来执行,在某些情况下,我们不知道自己到底在做什么,只知道该做什么。在某些情况下,手头的任务是在 Windows 注册表中添加一些注册表项。但由于许多这些程序依赖于基本相同的数据库,因此一些步骤已经应用。我正在开发一个批处理文件来检查已执行和未执行的步骤。

所以我想知道如果我有一个注册表文件,里面全是要在 Windows 注册表中编辑的条目,我可以使用相同的条目来检查它们是否已应用于注册表。我是否可以将注册表项的内容复制到批处理文件中以检查条目,或者我是否需要发送批处理文件和密钥文件来完成此过程。

答案1

如何检查 Windows 注册表中是否存在某个项?

可以使用以下方法完成reg query key

  • 此命令将设置%errorlevel%

  • errorlevel=0表示该密钥存在。

  • errorlevel=1表示密钥不存在。


如何向 Windows 注册表添加项?

如果不存在密钥,则使用 添加密钥reg add key


示例批处理文件

@echo off
reg query mykey >nul
if %errorlevel% equ 0 (
  echo "mykey exists- do nothing"
) else (
  echo "mykey does not exist - add the key and give it a value"
  reg add mykey
  reg add mykey /v value ...
)

进一步阅读

相关内容