DOS コマンドを使用して Java バージョンを抽出する方法

DOS コマンドを使用して Java バージョンを抽出する方法

私はシステム内の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%

参照:

関連情報