问题描述
我需要从下面的 java -version
fetch java版本 1.6.0_26
b
$ b
I need to fetch java version 1.6.0_26
from the below java -version
output
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
1.6.0_26
注意:我不需要power shell或任何外部程序
Note: I don't need power shell or any external programs
UPDATE
我想出了 java -version 2& 1 |
I came up with
java -version 2>&1 | findstr /i "version"
which give me below output
java version "1.6.0_22"
现在甚至可以使用模式匹配或 regex 将为我工作)。
now even a java way of pattern matching or regex will work for me :)
推荐答案
您可以从问题Panga链接到一行运行解决方案: / p>
You can run the solution from the question Pangea linked to in a single line:
c:\>for /f "tokens=3" %g in ('java -version 2^>^&1 ^| findstr /i "version"') do @echo %g
"1.6.0_24"
c:\>for /f "tokens=3" %g in ('java -version 2^>^&1 ^| findstr /i "version"') do ( @set v=%g & @echo %v:~1,8% )
1.6.0_24
我刚刚检查,似乎我的第二个例子只适用于Windows7,下面的工作对我来说在Windows XP上(因此它应该在Windows7上工作)
I just checked and it seems my second example only works with Windows7, the following works for me on Windows XP (so it should work on Windows7 as well)
for /f "tokens=3" %g in ('java -version 2^>^&1 ^| findstr /i "version"') do ( @echo %~g )
这篇关于如何在Windows命令提示符下使用单个命令获取java版本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!