我想獲得 '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