如何通过命令行从注册表项值获取数据

Dem*_*ave 9 registry command-line command registrykey

我正在尝试通过命令行从注册表项值获取数据

我可以使用以下代码检索注册表项的值

reg query HKCU\Software\[PATH_TO_MY_DIR] /v [KEY_NAME]
Run Code Online (Sandbox Code Playgroud)

这按预期工作并输出三个项目:

  • 姓名
  • 类型
  • 数据

我正在尝试从命令行中的值获取数据,我该怎么做?

Joh*_*ens 6

FOR这可以非常简单地使用 System.out.println () 旁边的循环来完成Token。由于reg query将以某种格式输出变量one two three,因此我们可以tokens=3仅获取输出中的第三项。

来自命令:

for /F "tokens=3" %A in ('reg query "HKCU\Software\[PATH_TO_MY_DIR]" /v "[KEY_NAME]"') DO (Echo %A)
Run Code Online (Sandbox Code Playgroud)

来自批次:

for /F "tokens=3" %%A in ('reg query "HKCU\Software\[PATH_TO_MY_DIR]" /v "[KEY_NAME]"') DO (Echo %%A)
Run Code Online (Sandbox Code Playgroud)

  • 如果注册表值包含空格,这将不起作用。 (6认同)