使用批处理文件从 exe 输出设置变量

使用批处理文件从 exe 输出设置变量

我想使用批处理文件检查 Edge webdriver 版本。webdriver 的名称是msedgedriver.exe,我可以使用此命令手动检查版本。

msedgedriver.exe -v

输出是

MSEdgeDriver 96.0.1054.62 (f97cb2ce0103f6eaa6dc1994d77748c659744916)

但是当我使用批处理来获取输出时,它什么也没有显示。批处理代码:

FOR /F "tokens=* USEBACKQ" %%F IN ('msedgedriver.exe -v') DO (
SET var=%%F
)
ECHO %var%

我已经尝试了如何在批处理文件中将命令输出设置为变量链接。我检查了文件路径,它是正确的。并尝试了'call "msedgedriver.exe -v"''msedgedriver.exe /v'或其他所有组合。

答案1

我怀疑因为输出有括号“()”,所以你必须使用一些额外的引号:

@echo off
FOR /F "tokens=2" %%F IN ('"msedgedriver.exe -v"') DO SET var=%%F

echo %var%
pause

相关内容