我正在尝试使用以下方法提取系统中的 Java 版本
java -fullversion
提供输出
openjdk full version "1.x.y.124357"
我需要存储这个 Java 版本1.xy124357在没有引号的变量中。
请提出任何解决方法。提前致谢。
答案1
for /f "delims=" %a in ('java -fullversion 2^>^&1 1^>nul') do set version="%a"
set version=%version:"=%
echo %version%
如果它在批处理文件中,则必须写入%%a
而不是%a
,请参阅这。
仅获取字符串的最后一部分:
for /f "delims=" %a in ('java -fullversion 2^>^&1 1^>nul') do for /f "tokens=4" %t in ("%a") do set version=%~t
echo %version%
如果版本字符串不一定是第 4 个标记,但它始终是最后一个,则可以执行以下操作:
for /f "delims=" %a in ('java -fullversion 2^>^&1 1^>nul') do for %t in (%a) do set version=%~t
echo %version%
也可以看看: