我有一个批处理文件,用于读取注册表值。然而我读取的条目包含空格,当设置变量时似乎只捕获第一个空格字符之前的所有内容。
set KEY_NAME="HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\My Entry"
set VALUE_NAME=Home
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set Home=%%C
)
if defined ValueName (
@echo Home = %Home%
) else (
@echo %KEY_NAME%\%VALUE_NAME% not found.
)
主目录注册表实际包含此字符串:"C:\Program Files (x86)\Dir1\Dir2",而批处理文件仅捕获了这个:"C:\Program"
有人有修复此问题的想法吗?
谢谢。
REG QUERY %KEY_NAME% /v %VALUE_NAME%
的输出是什么? - user2033427