程序在命令行上返回此正则表达式类型[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}\.[0-9]{1,}
的版本字符串。因此,输出如下所示:如何获取批处理文件中程序的主要版本号,次要版本号等?
C:\users\user\desktop>a.exe --version
Version: 1.22.53.4134
我将输出保存到一个变量Version
本GET-版本info.bat
for /f "usebackq tokens=1* delims=: " %%i in (`a.exe --version`) do (
if /i "%%i"=="Version" set "Version=%%j"
)
为了解决我确切的问题,我只需要主要和未成年人版本号,但一般的,适应性的解决方案当然也是好的。
如何在批处理文件中获取程序的主版本号和次版本号?
工程很好,但我需要添加一行:'set“Version =%Version:。=,%”'以获取带点的版本号。 – user69453
我不明白你的意见。在我的测试中,通过__FOR__从文本文件处理'Version:1.22.53.4134'这行,而不是输出我没有的应用程序'a.exe',环境变量'Version'的值为'1.22'批处理文件执行后。该点是'set'Version = %% J。%% K“'中的固定字符。因此,无论您的问题是否包含真实数据,或者如果您需要额外的一行,都会造成问题。另外你的命令行用版本字符串中的逗号代替所有的点。如果你想要逗号,你可以使用'%% J,%% K'而不是'%% J。%% K'。 – Mofi