We need delayed expansion
setlocal enabledelayedexpansion
Just a variable for the maximum:
set max=0
Then iterate over the files:
for %%x in (version-*.jar) do (
We need the file name without extension
set "FN=%%~nx"
And remove the version-
from the start:
set "FN=!FN:version-=!"
Now FN
should contain just the number and we can compare:
if !FN! GTR !max! set max=!FN!
)
And we're done:
echo highest version: version-%max%.jar
The complete batch file:
@echo off
setlocal enabledelayedexpansion
set max=0
for %%x in (version-*.jar) do (
set "FN=%%~nx"
set "FN=!FN:version-=!"
if !FN! GTR !max! set max=!FN!
)
echo highest version: version-%max%.jar
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…