[英]Trying to store the out of a command to a variable and trying to match in batch file
我正在尝试将变量设置为注册表路径。 然后查询注册表并尝试与该变量匹配。如果两者相同,则转到执行。 但是由于某种原因,我收到了错误消息,看起来此命令存在一些问题
set var=HKEY_LOCAL_MACHINE\System\x
IF reg query==var
GOTO EXecute
您在这里所做的只是比较字符串。 命令解释器应该如何知道reg query
是命令(除了事实,它本身不会产生太多有用的东西)。
您需要在这里执行程序,捕获其输出,然后进行比较。 您可以使用for /f
命令执行此操作:
for /f %%x in ('reg query ...') do ...
但是, reg
的输出是人类可读的,而不是机器可读的,因此您需要做一些工作才能使其正确。 基本上,您需要忽略for
语句和标题行中的空行...然后,您需要找到您感兴趣的实际值。 这将很快变得难看。
for /f %%a in ('reg query ...') do if "%var%" == "%%a" goto Execute
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.