Comment obtenir la version Java et que vous souhaitez obtenir "6" de la version Java à partir du fichier de lot. J'ai essayé en dessous du script, mais cela n'a pas fonctionné.
REM check java exists using JAVA_HOME system variable if "%JAVA_HOME%" == "" ( ECHO Installing java start /w jdk.exe /s SETX -m JAVA_HOME "C:\Program Files\Java\jdk1.6.0_31" ECHO java installed successfully ) ELSE ( ECHO checking java version goto check_java_version ) REM check java version using JAVA_HOME system variable :check_java_version set PATH=%PATH%;%JAVA_HOME%\bin for /f tokens^=2-5^ delims^=.-_^" %%j in ('%JAVA_HOME%/bin/java -version 2^>^&1') do set "jver=%%j%%k%%l%%m" echo %jver%
5 Réponses :
@echo off PATH %PATH%;%JAVA_HOME%\bin\ for /f tokens^=2-5^ delims^=.-_^" %%j in ('java -fullversion 2^>^&1') do set "jver=%%j%%k%%l%%m"
Comment imprimer la valeur de la société. J'ai essayé avec Echo% Jver%. ça ne fonctionne pas
Essayez avec * Path% Path%;% Java_Home% \ bin \ * b> avant la boucle
Obtenir une erreur: il dit * Le chemin n'est pas une commande. Ensuite, pour Echo% Jver%, il est indiqué que Echo est éteint. J'ai mis à jour ma question ci-dessus. a donné un script complet. juste vérifier plz.
retirer le * .Le gras laissé à un astériks ici ... éditera la réponse
Java.exe n'est pas sur le chemin. Quel est le résultat si vous n'écrivez simplement% java_home% \ bin \ java.exe /?
Votre chemin devrait avoir% java_home% \ bin.vous pouvez vérifier si java -bulversion code> génère une sortie.Si vous avez la java.exe dans le chemin, je devrais réécrire ma réponse à utiliser uniquement
- Version code> commutateur.
voici mon code: pour / f jetons ^ = 2-5 ^ Delims ^ =.-_ ^ "%% j in ('Java -Version 2 ^> ^ & 1') Do" Jver = %% j "j'ai eu 6 hors de la version. Comment obtenir "0_31"?
Vous devez utiliser -bulversion code> à la place
-version code>
pour / f eol ^ = j ^ jetons ^ = 2-5 ^ DELIMS ^ =.-_ ^ "%% j in ('Java -version 2 ^> ^ & 1') Do" Jver = %% J . %% k. %% l _ %% m " code>
J'aimerais utiliser un chemin de java personnalisé, comme celui-ci: pour / f jetons ^ = 2-5 ^ Delims ^ =.-_ ^ "% J in ('Path \ to \ Jre \ Java -Bulversion 2 ^> ^ & 1 ') do @set "jver =% j% k% k% m" code>. Comment puis-je obtenir ce travail?
@ S1ICE - Il devrait fonctionner dans la manière dont vous l'avez posté. Mais certains fournisseurs ont des implémentations différentes de -Bulversion code>. Quel est le problème avec la ligne que vous avez postée? Est-ce que cela a couru du fichier batch ou de l'invite de commande?
Il devrait être Java -Version // Si le chemin d'environnement est déjà défini p>
ou% java_home% / bin / java -version // Si le chemin n'est pas déjà défini p>
Dans une instruction de bloc,% var% serait écho comme la valeur de Déplacez le var code> avant la saisie du bloc. P>
ECHO code> en dehors du bloc ou ECHO
%% g code> ou
appel echo %% Javaver %% code> ou invoquer
setlocal EnabledElayedExpansion Code> et
Echo! Javaver! Code> P>
Vous pouvez le faire avec Exemple de script: p> sortie est: awk code>:
java version: "1.7.0_21-b11" code>
awk pour Windows P> p>
@Bobbobrachel Script inséré.
Ce sera surlysé idiot mais pourquoi ne pas simplement imprimer Java_Home Chemin? p>