Per Batch überprüfen, ob Java etc. aktuell sind
Guten morgen =)
Wir Informatiker versuchen es ja immer so einfach wie möglich zu machen. Deshalb würde ich gerne eine Batch-Datei schreiben, die mir automatisch sagt, ob Java, Adobe etc auf dem aktuellen Stand sind. Leider weiß ich nicht, wie ich dies schaffe. Ich habe für jedes der Programme einen eigenen Ordner, wo nur die aktuelle Datei liegt. Das heißt ich könnte per Skript den Namen dieser Datei benutzen, um ihn mit der aktuellen Version zu vergleichen. Wie allerdings schaffe ich dies? Ich möchte nicht die Datei runterladen, um diese auf dem Rechner zu vergleichen, sondern möchte sie nur runterladen, wenn die Datei aktueller ist. Habt Ihr eventuell ein paar Tipps und Tricks für mich?
MfG Noobstar0815
Wir Informatiker versuchen es ja immer so einfach wie möglich zu machen. Deshalb würde ich gerne eine Batch-Datei schreiben, die mir automatisch sagt, ob Java, Adobe etc auf dem aktuellen Stand sind. Leider weiß ich nicht, wie ich dies schaffe. Ich habe für jedes der Programme einen eigenen Ordner, wo nur die aktuelle Datei liegt. Das heißt ich könnte per Skript den Namen dieser Datei benutzen, um ihn mit der aktuellen Version zu vergleichen. Wie allerdings schaffe ich dies? Ich möchte nicht die Datei runterladen, um diese auf dem Rechner zu vergleichen, sondern möchte sie nur runterladen, wenn die Datei aktueller ist. Habt Ihr eventuell ein paar Tipps und Tricks für mich?
MfG Noobstar0815
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 204669
Url: https://administrator.de/forum/per-batch-ueberpruefen-ob-java-etc-aktuell-sind-204669.html
Ausgedruckt am: 28.12.2024 um 14:12 Uhr
26 Kommentare
Neuester Kommentar
Hallo,
mir ist leider auch noch nichts vernüftiges eingefallen, wie man das sinnvoll abfragen kann. Meine Versuche in der Domäne über WMI die Sachen abzufragen funktionierten einigermaßen:
WMIC /node:192.168.0.10 product where "name like '%java%'" get name,version,identifyingNumber
Allerdings kommt dann noch ein zusätzliches Problem dazu, dass es 32 Bit und 64 Bit Versionen von Java gibt. Mein letzter Stand war dann, die aktuellen Versionen in ein freigegebenes Verzeichnis herunterladen und die Installation mittels psExec (remote) einfach zu starten. Sollte die Version schon vorhanden sein, bricht die Installation ab. Sind ältere vorhanden scheint es so, dass Java diese dann entfernt:
start \\NAS\NETLOGON\PSTools\PsExec.exe \\192.168.0.10 "\\NAS\freigabe\jre-7u17-windows-i586.exe" /s ADDLOCAL=ALL IEXPLORER=1 MOZILLA=1 /Passive /NoRestart
Es scheint bisher die schnellste Variante zu sein, um bei uns die Rechner mit dem aktuellen Java zu versorgen.
mir ist leider auch noch nichts vernüftiges eingefallen, wie man das sinnvoll abfragen kann. Meine Versuche in der Domäne über WMI die Sachen abzufragen funktionierten einigermaßen:
WMIC /node:192.168.0.10 product where "name like '%java%'" get name,version,identifyingNumber
Allerdings kommt dann noch ein zusätzliches Problem dazu, dass es 32 Bit und 64 Bit Versionen von Java gibt. Mein letzter Stand war dann, die aktuellen Versionen in ein freigegebenes Verzeichnis herunterladen und die Installation mittels psExec (remote) einfach zu starten. Sollte die Version schon vorhanden sein, bricht die Installation ab. Sind ältere vorhanden scheint es so, dass Java diese dann entfernt:
start \\NAS\NETLOGON\PSTools\PsExec.exe \\192.168.0.10 "\\NAS\freigabe\jre-7u17-windows-i586.exe" /s ADDLOCAL=ALL IEXPLORER=1 MOZILLA=1 /Passive /NoRestart
Es scheint bisher die schnellste Variante zu sein, um bei uns die Rechner mit dem aktuellen Java zu versorgen.
Hi,
er wird doch einen Registry-Eintrag zur installation bzw. der Version von Java geben, also -> batchScript welches das ausliest (nix mit extra Java starten und so Scherze) und dann mit der aktuellen version vergleichen, welche irgendwo gespeichert liegt
Bei der Umsetzung kann ich euch nicht helfen, aber die Suchfunktion müsste da Wunder wirken
Grüße
Exze
er wird doch einen Registry-Eintrag zur installation bzw. der Version von Java geben, also -> batchScript welches das ausliest (nix mit extra Java starten und so Scherze) und dann mit der aktuellen version vergleichen, welche irgendwo gespeichert liegt
Bei der Umsetzung kann ich euch nicht helfen, aber die Suchfunktion müsste da Wunder wirken
Grüße
Exze
Hi,
also im Internet Daten abfragen hab ich bisher nur mit VBA gemacht am einfachsten wär´s wirklich du würdest die Dateien manuell runterladen, und dann einfach die Vers.-Nummern vergleichen denk ich
Grüße
Exze
also im Internet Daten abfragen hab ich bisher nur mit VBA gemacht am einfachsten wär´s wirklich du würdest die Dateien manuell runterladen, und dann einfach die Vers.-Nummern vergleichen denk ich
Grüße
Exze
Also das Daten runterladen sollte kein Problem sein, genauso wie auf einer Website zu gucken, ob da ´ne neuer Version da ist. Schwierig wird´s nur wenn diese Website sich ändert :D
mit VBA kann ich z.B. im InternetExplorer (ich weiß ... IGITT!!) verschiedene Seiten aufrufen und da Informationen rausziehen.
Grüße
Exze
mit VBA kann ich z.B. im InternetExplorer (ich weiß ... IGITT!!) verschiedene Seiten aufrufen und da Informationen rausziehen.
Grüße
Exze
Lokale Versionsnummer habe ich bisher nur mit wmic (wie oben) oder über Java selbst herausgefunden, da der Pfad in der Registry nicht genau definiert ist. Zum Beispiel liegt dieser für "Java 7 Update 13" unter dem Pfad:
Darüber wird das nichts. Über das Java selbst geht die Versionsanzeige mit:Lokal müsste man sich dann eine Datei in den UpdateOrdner legen, wo eine Zeile zum Vergleichen hinterlegt ist (z.B.: java version "1.7.0_17").
Ich finde lieber einmal die neue Version herunterladen macht weniger Arbeit, als ein Skript zu basteln
Wenn ein Skript, dann brauchst du die Seite als Startseite: http://www.oracle.com/technetwork/java/javase/downloads/index.html
Dort kannst du immer die aktuelle Version sehen. Die benutze ich unter Linux mit einem Bashskript schon ewig, um meine Updates zu laden.
Gruß Ronny
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF238120731FF
%ProgramFiles%\Java\jre7\bin\java.exe -version
Ich finde lieber einmal die neue Version herunterladen macht weniger Arbeit, als ein Skript zu basteln
Wenn ein Skript, dann brauchst du die Seite als Startseite: http://www.oracle.com/technetwork/java/javase/downloads/index.html
Dort kannst du immer die aktuelle Version sehen. Die benutze ich unter Linux mit einem Bashskript schon ewig, um meine Updates zu laden.
Gruß Ronny
Hey Noobstar ;)
du brauchst dich nicht zu entschuldigen :D
ich bin Azb im 2. LJ ^^
in der Registry sollte normalerweise schon die aktuelle Version stehen, weil Java beim Update-Prozess erst überprüft, ob nicht schon eine neuere Version schon drauf ist -> per RegKey.
was VBA angeht, das müsste sich auch mit anderen Programmier- bzw. Scriptsprachen machen lassen, ich weiß halt nur, dass ich´s bei mir mit VBA gelöst hab.
Grüße
Exze
du brauchst dich nicht zu entschuldigen :D
ich bin Azb im 2. LJ ^^
in der Registry sollte normalerweise schon die aktuelle Version stehen, weil Java beim Update-Prozess erst überprüft, ob nicht schon eine neuere Version schon drauf ist -> per RegKey.
was VBA angeht, das müsste sich auch mit anderen Programmier- bzw. Scriptsprachen machen lassen, ich weiß halt nur, dass ich´s bei mir mit VBA gelöst hab.
Grüße
Exze
Zitat von @Noobstar0815:
Ja, dass es in der Registry steht weiß ich, nur hab ich da vorhin etwas rumgesucht und nichts unter dem Key gefunden,
hätte ja sein können dass es in einem anderen Key steht :D
Ja, dass es in der Registry steht weiß ich, nur hab ich da vorhin etwas rumgesucht und nichts unter dem Key gefunden,
hätte ja sein können dass es in einem anderen Key steht :D
Also unterdem Registrykey, welchen ich angegeben habe, sollte es eigentlich stehen. Der bezieht sich nämlich auf Local Machine. Ggf. mußt Du Dir die unterschlüssel anschauen.
Zitat von @hronny:
C:\>REG QUERY "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment" /v
> Java7FamilyVersion
>
> ! REG.EXE VERSION 3.0
>
> HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
> Java7FamilyVersion REG_SZ 1.7.0_17
Das Problem was dabei ist, das hiermit die Java-Version 7 abgefragt ist. Stelleweise ist auch noch die Java-Version 6 im Einsatz, oder sogar älter. ich sehe hier stellenweise auf noch Java v1.5 bzw. 1.4.
Also das Script, welches dir die aktuelle Vers. Nummer rauszieht ist nicht schwer und kann ich dir innerhalb von Minuten basteln, wenn die Internet-Seite, wo ich die Vers.Nummer finden kann immer gleich bleibt oder sich nur minimal ändert
Ok :D das ist natürlich ungünstig, ich bräuchte dazu eine Seite, auf der ich die Versionsnummer der aktuellen Java-Version finde, dann ist das alles kein Problem.
Hi @Endoro
das schon, das ist ja nicht das Problem, aber wir brauchen die Version, die auf der Update-Seite runtergeladen werden kann
Grüße
Exze
das schon, das ist ja nicht das Problem, aber wir brauchen die Version, die auf der Update-Seite runtergeladen werden kann
Grüße
Exze
Ich verstehe euer Problem mittlerweile nicht mehr. Was fehlt denn nun eigentlich? Ich fasse mal kurz zusammen:
- wir wissen nun das lokal es über Registry bzw "Java -version" geht
- die Downloadseite für Java ist http://www.oracle.com/technetwork/java/javase/downloads/index.html
- die Downloadseite für Adobe Flash Player ist http://www.adobe.com/products/flashplayer/distribution3.html
Auf den beiden Internetseiten steht die aktuelle Versionsnummer (Java SE 7u17 und Flash Player 11.7.700.169). Wenn schon so kompliziert, dann müsst ihr die Stellen mit den Versionsnummern auf der Webseite über DOM oder SuchUndFind auslesen. So hart es auch klingen mag, aber es wird keine Internetseite geben, die einfach nur die Versionsnummer ausspuckt.
- wir wissen nun das lokal es über Registry bzw "Java -version" geht
- die Downloadseite für Java ist http://www.oracle.com/technetwork/java/javase/downloads/index.html
- die Downloadseite für Adobe Flash Player ist http://www.adobe.com/products/flashplayer/distribution3.html
Auf den beiden Internetseiten steht die aktuelle Versionsnummer (Java SE 7u17 und Flash Player 11.7.700.169). Wenn schon so kompliziert, dann müsst ihr die Stellen mit den Versionsnummern auf der Webseite über DOM oder SuchUndFind auslesen. So hart es auch klingen mag, aber es wird keine Internetseite geben, die einfach nur die Versionsnummer ausspuckt.
Hi,
@hronny oh da steht tatsächlich die Versions-Nummer
ich hab die gar nicht gesehn, dann ist´s natürlich noch relativ einfach rauszufiltern
@Noobstar0815 soll ich dir helfen, da n Tool zu basteln, welches die vers.Nummer ausliest oder willst du das selber machen ?
Grüße
Exze
@hronny oh da steht tatsächlich die Versions-Nummer
ich hab die gar nicht gesehn, dann ist´s natürlich noch relativ einfach rauszufiltern
@Noobstar0815 soll ich dir helfen, da n Tool zu basteln, welches die vers.Nummer ausliest oder willst du das selber machen ?
Grüße
Exze