我想获得 '6' 如下如何从批处理脚本获取Java版本?
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)
给出了相同的Java版本输出我写这个批处理脚本
set VERSION6="1.6.0_21"
java -version 2>&1 | findstr "version" >ab.txt
for /f "tokens=3" %%g in (ab.txt) do (
if not %%g == %VERSION6% echo %%g
echo %%g
)
%%g
显示 “1.6.0_21”
有人可能指导我改正方向吗?我对for /f
不太了解。
感谢帕特里克,这真的很酷的东西。希望我有一天会写我自己的,但是这对于/ f对我来说是相当困惑的:( – abi1964 2011-04-15 12:08:50
还有一件事我需要问与上述问题有关。如果我的JAVA_HOME路径设置为“c:\ Program Files \ ....“,当我运行该脚本时,它会得到一个空格,并说”'C:\ Program'不能识别为内部或外部命令,可操作程序或批处理文件。“我该如何解决这个问题? – abi1964 2011-04-19 09:55:05
@Abhishek,尝试在'%JAVA_HOME%'周围放置双引号,就像这样:'“%JAVA_HOME%”'。 – 2011-04-19 14:49:29