Batch file 处理批处理文件

Batch file 处理批处理文件,batch-file,windows-scripting,Batch File,Windows Scripting,我从一个令牌获取信息而不是从另一个令牌获取信息的问题。我正在执行reg查询,希望使用GEQ这个变量根据以下注册表DWORD值比较值: 值名称:版本 值数据(十六进制):4020000 以下是仍在测试中的命令: @echo on setlocal enabledelayedexpansion set n2=0x4020000 :Query fOR /f "tokens=2*" %%A IN ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Inst

我从一个令牌获取信息而不是从另一个令牌获取信息的问题。我正在执行reg查询,希望使用GEQ这个变量根据以下注册表DWORD值比较值: 值名称:版本 值数据(十六进制):4020000

以下是仍在测试中的命令:

@echo on
setlocal enabledelayedexpansion
set n2=0x4020000

:Query
fOR /f "tokens=2*" %%A IN ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products\A2C5AA9AEF84B7B4BADF0EA6D2D6F1E8" /v version') DO SET n1=%%B
for /f "tokens=2* delims=x" %%a in ("%n2%") do set "v2=%%a"
for /f "tokens=2* delims=x" %%a in ("%n1%") do set "v1=%%a"
>>"C:\temp\version.txt" echo %v1,%v2% 
无论我无法输出什么,我都需要将其与%v1%进行比较。我缺少什么

谢谢


Mikoyan在我看来不太合适。它的计算结果应该是什么?因此%v2%显示为402000,但我无法从%V1%variable获取任何信息。在
echo
命令中,仍然缺少一个
%
符号(在V1之后,逗号之前)。第一次
for
循环之后的
n1
的内容是什么?或者更广泛地说,注册表值的内容是什么?哦,天哪……对此我真的很抱歉。我有过这样的一天。对此表示歉意:$我怎么能删除这个问题,我真的应该知道你们的答案我看不出明显的错误<代码>%v1,%v2%在我看来不合适。它的计算结果应该是什么?因此%v2%显示为402000,但我无法从%V1%variable获取任何信息。在
echo
命令中,仍然缺少一个
%
符号(在V1之后,逗号之前)。第一次
for
循环之后的
n1
的内容是什么?或者更广泛地说,注册表值的内容是什么?哦,天哪……对此我真的很抱歉。我有过这样的一天。对此表示歉意:$我怎么能删除这个问题,我真的应该知道你们的答案我看不出明显的错误!