tokschi
Goto Top

Java Version abfragen und in eine Variable schreiben

Ich würde gerne die aktuelle Java Version abfragen. Prinzipiel geht das mit:

java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode, sharing)

Nun hätte ich gern alles was in der ersten Ausgabezeile in Hochkommas (einschließlich dieser) steht in einer Variable. Kann da jemand helfen? Ich kriege einfach nicht heraus wie man so eine Ausgabe mit SET oderso in eine Variable hineinbekommt um sie dann weiterverarbeiten zu können.

Content-Key: 64533

Url: https://administrator.de/contentid/64533

Ausgedruckt am: 29.03.2024 um 13:03 Uhr

Mitglied: miniversum
miniversum 24.07.2007 um 15:20:36 Uhr
Goto Top
Versuchs mal so:
set "JavaVersion="  
for /F "tokens=3 delims= " %%a in ('java version') do if not defined JavaVersion set JavaVersion=%%~a  
echo Java Version ist %JavaVersion%
miniversum
Mitglied: AndreasA
AndreasA 24.07.2007 um 21:19:11 Uhr
Goto Top
Versuchs mal so:
> set "JavaVersion="  
> for /F "tokens=3 delims= " %%a in ('java version') do if not defined JavaVersion set JavaVersion=%%~a  
> echo Java Version ist %JavaVersion%
> 
miniversum

Biste dir sicher ?? ich bekomme nur was brauchbares wenn ich
java -version 2>temp.txt
vorher mache und deine zeile in
for /F "tokens=3 delims= " %%a in (temp.txt) do if not defined JavaVersion set JavaVersion=%%~a
ändere !!!
kannste leicht prüfen mit
java -version >temp.txt
type temp.txt
da bleibt alles leer :-O

So long Gruß Andreas
Mitglied: miniversum
miniversum 24.07.2007 um 21:31:04 Uhr
Goto Top
Da mein java hier nur halb installiert ist und der Befehl bei mir so garnicht geht bin ich von der Angabe im Eingangsposting ausgegangen..

miniversum
Mitglied: AndreasA
AndreasA 24.07.2007 um 21:43:19 Uhr
Goto Top
Da mein java hier nur halb installiert ist
und der Befehl bei mir so garnicht geht bin
ich von der Angabe im Eingangsposting
ausgegangen..

miniversum

nobody is perfect
der Fragesteller kam ja auch mit der Formatierungshilfe hier nicht klar, sonst hättest du den Befehl den er benutzte ( java -version ) auch gesehen face-wink Ich bin auch drüber gestolpert bei ( java version ) ohne Minus-Zeichen

PS deine Hilfen sind trotzdem genial --- weitermachen !!!

Gruß Andreas
Mitglied: Biber
Biber 24.07.2007 um 22:10:13 Uhr
Goto Top
Na ja,

auf die angemessene Oneliner-Syntax für den Output von "java -version" kommt auch keiner, der es nicht ausprobieren kann.
Nicht nur M$ ist unkonventionell...*gg

Diese Ausgabe wird nämlich geschickterweise auf STDERR ausgegeben, was somit erstmal an jeglichem FIND oder sonstigem Filtertool vorbeiläuft. Wie ja auch AndreasA festgestellt hat.

Aber falls es jemand als Oneliner haben möchte:
a) am CMD-Prompt mit "@echo" zum Testen:
>for /f "tokens=3" %i in ('java -version ^2^>^&1^|find "java version"') do @echo Set javavers=%~i  
Set javavers=1.6.0_02
b) im Batch
>for /f "tokens=3" %%i in ('java -version ^2^>^&1^|find "java version"') do Set javavers=%%~i  
REM Variablenwert javavers=1.6.0_02 (oder ähnliches)

Grüße
Biber
Mitglied: AndreasA
AndreasA 24.07.2007 um 22:23:39 Uhr
Goto Top
Na ja,

auf die angemessene Oneliner-Syntax für den Output von "java -version" kommt auch keiner,
der es nicht ausprobieren kann. Nicht nur M$ ist unkonventionell...*gg

Diese Ausgabe wird nämlich geschickterweise auf STDERR ausgegeben, was
somit erstmal an jeglichem FIND oder sonstigem Filtertool vorbeiläuft. Wie ja
auch AndreasA festgestellt hat.

Danke für die Blumen face-smile

Aber falls es jemand als Oneliner haben möchte:

Ich wusste auf dich ist immer Verlaß beim Optimieren
wenn wir nun noch
do Set javavers=%%~i
durch
do Set javavers="%%~i"
ersetzen dürfen wir dem Fragesteller auch seinen Wunsch (die Version in Hochkommata als Variable) komplett erfüllt haben face-wink

Gruß Andreas
Mitglied: Biber
Biber 24.07.2007 um 22:36:59 Uhr
Goto Top
Moin Andreas,

also dann können wir auch
STREICHE: ......... do Set javavers="%%~i"
SETZE:....do Set javavers=%%i

...dann haben wir dieses ganze neumodische kryptische Blendwerk wieder draußen... face-wink

Schönen Abend

Biber
der jetzt gleich Feierabend für heute macht
Mitglied: tokschi
tokschi 25.07.2007 um 21:49:03 Uhr
Goto Top
Na Supi, das nenne ich eine prima Arbeit.

Aber Asche auf mein Haupt, klar ich hätte mir schonmal die Zitierformate anschauen können, den Aufruf nicht vergessen sollen und von der Ausgabe auf stderr habe ich ebenfalls schon gewusst. Habs halt zu schnell eingetippert und Euch 'ne menge Arbeit bereitet.

Den Beitrag werde ich als gelöst markieren.