程序在命令行上返回此正則表達式類型[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