2009-11-17 66 views

回答

2

你在做什么有只是比较字符串。指挥官应该如何知道reg query是一个命令(除了事实,它本身不会产生太多有用的东西)。

你需要做的是执行你的程序,捕获它的输出然后进行比较。你可以用for /f命令做到这一点:

for /f %%x in ('reg query ...') do ... 

然而,reg输出为人类可读的,而不是机器可读的,所以你需要一些工作得到它的权利。基本上,您需要忽略for语句和标题行中的空行,然后您需要找到您感兴趣的实际值。这会变得很难看。

0
for /f %%a in ('reg query ...') do if "%var%" == "%%a" goto Execute 
+0

这是给错误%%一个就是在这个时候 – alice7 2009-11-17 17:36:20

+0

的一倍%是一个批处理文件中使用的意外,他们不应该,如果直接输入一个命令行上一倍。 – brianary 2009-11-17 18:46:19

相关问题