Batch Text aus bestimmte Zeile aus eigenem CMD-Fenster verwenden?

Manaplayer

Cadet 4th Year
Registriert
Juni 2017
Beiträge
101
Hallöchen Leute.
Ich such mich noch kaputt - Immer finde ich nur Sachen wo es darum geht bestimmte Zeilen von Text aus Dateien zu verwenden.
Was ich aber brauche, ist der Text aus dem eigenen Batch-Fenster. Die Sache sieht so aus:
Code:
FOR /f "skip=1" %%i IN ('REG query HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318} /s /f "Intel(R) Centrino(R) Wireless-N 100"') DO echo %%i

Ergebnis:
Z:\DATEN>echo HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}\0001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}\0001

Z:\DATEN>echo DriverDesc
DriverDesc

Z:\DATEN>echo AdapterModel
AdapterModel

Z:\DATEN>echo Suchvorgang
Suchvorgang

Wie kann ich nun den Wert auschliesslich der ersten Zeile verwenden? (Echo hab ich natürlich nur zum testen verwendet was dabei rauskommt) Das andere Zeug da drunter macht das SET 1.Zeile=a wieder kaputt.
Hat jemand eine Idee dafür?

Thx schonmal im vorraus :)
 
Bin kein Profi, aber du kannst ja die Ausgabe in eine Datei umleiten durch das anhängen von "> bla.txt", dann kommst du eventuell mit den gefundenen Methoden weiter. Aber das geht bestimmt eleganter.
 
Ja, in Text umleiten hatte ich mir auch gedacht, aber wollte schauen wie es sonst geht.
Powershell, ja ich weiss dass es damit besser geht, nur sind alle meiner Scripts bisher in cmd und wollte soweit alles möglich ist auch dabei bleiben.
 
Manaplayer schrieb:
Wie kann ich nun den Wert auschliesslich der ersten Zeile verwenden?
1. Du kannst Dir eine Sprungmarke außerhalb der Schleife setzen und nach dem ersten Wert dorthin springen.
2. Wenn ich Dein Beispiel richtig interpretiere, suchst Du nur die Zeile, die den Schlüssel selbst enthält, Du könntest also entweder das Ergebnis auf seinen Inhalt prüfen oder
3. den Reg Query mittels find auf den gesuchten Wert einschränken.

Code:
set Key="HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}"
set Value="HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}"

FOR /f  %%i IN ('REG query %Key% /s /f "Intel(R) Centrino(R) Wireless-N 100" ^| find /i %Value%') DO echo %%i
 
Hm, die Beschreibungen von "key" und "value" finde ich nicht in Help. Nunja, der Sinn was ich mit dem Script machen will ist, dass es ermittelt in welchem Subkey sich die Werte des entsprechenden Netzwerkadapters befinden, da sich die Werte manchmal bei Neuinstallation verwenden. Mit dem richtigen Subkey kann ich dann die Einstellwerte sofort automatisch einsetzen anstatt dafür in dem Geräte-Manager zu gehen.
 
Sorry, aber wenn Du nicht in der Lage bist, zu verstehen, dass Key und Value keine Parameter von Reg Query sind, dann solltest Du Dich erst einmal mit den Grundlagen von Batch-Programmierung, insbesondere der Verwendung von Variablen beschäftigen.
 
Ja sorry, ich habs verstanden. Hatte wohl zu schnell durch die Zeilen geschaut, deswegen dachte ich, dass "key-value" mir noch unbekannte Parameter waren, obwohl ich natürlich den Sinn der Parameter kenne.
Na egal, wie gesagt, es geht mir bei der Sache darum, dass er nicht den exakten Reg-Schlüssel wiederfindet, sondern einen Wert unter den ganzen Schlüsseln danach und soll mir dann sagen, wo er ihn gefunden hat. Soweit hab ich es ja schon alles, und in der Liste steht auch wo er ihn gefunden hat, nur mehrmals. Ich brauche nur einen dieser Schlüssel, die ich dann als Variable setze und damit gehts weiter. Alles schon fertig, wenn ich alles über die Alternative als Textdatei weitermache.
 
Zurück
Oben