eras 10 Geschrieben 16. August 2005 Melden Geschrieben 16. August 2005 hi ho, Ich würde gerne per Batch einen Registrierungsschlüssel bzw. Wert auslesen (mit reg query) und diesen Wert dann gerne als Variable Setzen, wie muss der Befehl lauten damit ich den ausgelesenen Wert als Variable Setzen kann? thx. Zitieren
netsniffer 10 Geschrieben 16. August 2005 Melden Geschrieben 16. August 2005 Hallo, hab mal bisschen gegoogelt und dabei folgende Seite gefunden: http://www.robvanderwoude.com/index.html Sollte eigentlich das sein, was du gesucht hast... (Konnte es leider nicht ausprobieren, aber nen Versuch is es wert...) Zitieren
Das Urmel 10 Geschrieben 16. August 2005 Melden Geschrieben 16. August 2005 Schau mal hier weiter Zitieren
eras 10 Geschrieben 16. August 2005 Autor Melden Geschrieben 16. August 2005 Danke Urmel, ich hab's ein weing Angepasst, aber ich bin einfach zu sehr Batch noob. Ich hab's mal mit folgener Zeile und testschlüssel versucht: for /f "skip=4" %i in ("reg query HKCR\.3g2" /v "Content Type") do set pfad=%%i hmm, eigentlich sollte ich so doch die Variable %pfad% erhalten, nur hab ich die nicht wenn ich mit set nachschaue!? Zitieren
eras 10 Geschrieben 16. August 2005 Autor Melden Geschrieben 16. August 2005 ok ok, ich bin ganz nah dran, mit diesem Befehl kann ich auslesen was Reg query zurückgibt: FOR /F "tokens=3 delims= " %i IN ('REG QUERY "HKCU\Control Panel\International" /v sCountry') DO SET Country=%i Hier würde z.b. das Land als Variable gesetzt. Doch leider nicht ganz, das Format von Reg Query sieht nämlich folgendermaßen aus: ! REG.EXE VERSION 3.0 HKEY_CURRENT_USER\Control Panel\International sCountry REG_SZ Deutschland Mit dem obigen FOR Befehl wird somit aber VERSION als Variable gesetzt, es sollte aber Deutschland sein. Dazu müsste ich ihm sagen das er 4 Zeilen überspringen soll, das macht er aber leider mit dem FOR /F "skip=4 usw. Befehl nicht. Zitieren
Das Urmel 10 Geschrieben 16. August 2005 Melden Geschrieben 16. August 2005 OK, obwohl lefg erst kürzlich das mal schön und Lehrbuchartig aufgedröselt hat, hier nochmal aber nur in Kurzform. Hint: in der cmd mal "help for" eingeben, dann kommt die Langform der Erklärung. FOR /F "tokens=3 skip=2" %i IN ('REG QUERY "HKCU\Control Panel\International" /v sCountry') DO SET Land=%i Alles in einer Zeile direkt in der CMD ausgeführt, dein Land kommt raus. Warum - Skip überspringt 2 Zeilen der Ausgabe, die dritte wird geparst. - Token - wir wollen das dritte Token haben, sonst nix - Delim - fällt hier weg da Default = Blank zwischen den Token. Alles klar? :) Zitieren
eras 10 Geschrieben 16. August 2005 Autor Melden Geschrieben 16. August 2005 Jo Super, das scheints gewesen zu sein, Danke :) Da gibts nur ein Problem: Auf der Kommandozeile funktioniert das ganze wunderbar, aber in einer Batchdatei nicht, da bekommt man folgenden Fehler: "i" ist an dieser Stelle Syntaktisch nicht verarbeitbar Sehr seltsam... Zitieren
Das Urmel 10 Geschrieben 16. August 2005 Melden Geschrieben 16. August 2005 in Batch %%i Du solltest dir wirklich mal die Hilfe anschauen, steht alles drin. ;) Zitieren
eras 10 Geschrieben 16. August 2005 Autor Melden Geschrieben 16. August 2005 in Batch %%iDu solltest dir wirklich mal die Hilfe anschauen, steht alles drin. ;) lol Supi! Danke Danke :D Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.