Batch Sonderzeichen und ständig "Mehr?Mehr?Mehr?"?

Manaplayer

Cadet 4th Year
Registriert
Juni 2017
Beiträge
105
Hallöchen Leute,
Sicher hab ich schon bei Google durchgeschaut, aber wirklich schlauer daraus geworden bin ich auch nicht, beziehungsweise nicht weitergekommen. Es geht um diese kleine Befehlszeile:

for /f %a in ('powercfg /devicequery all_devices^|findstr /c:"Intel(R) HD Graphics') do echo %a

Erstmal was das hier bringen soll - Ich möchte später wenn das hier endlich funktioniert aus dem echo am Ende dann einen SET machen. Das ganze kommt dann in ein viel grösseres schon funktionstüchtigen Script rein, damit ich dort anzeigen kann, welche Hardware grade vorhanden/aktiviert/deaktiviert ist.
Nun ist es aber so, dass ich mehrere "Intel(R)" - Sachen im System hab, und daher den genauen Namen der Hardware suchen muss.
Womit ich nicht klarkomme ist das "(R)" nach dem Intel, weswegen da sicher was batchtechnisch was schiefläuft. Und am Ende fragt mich das Batchfenster immer einfach nur nach "Mehr?", und das wars.
Hat einer eine Idee wie man das "(R)" dort nicht wie ein Teil des Befehls anzeigen lassen könnte?
 
Wenn du mit findstr arbeitest und eine Zeichenfolge durch /c: beginnst muss auch am Ende ein " sein. In deinem Beispiel hast es vergessen
 
Danke für die schnelle Antwort, aber auch hiermit komme ich nicht weiter, aber zumindest hab ich den Fehler wegen dem "Mehr?" gefunden:

for /f %a in ('powercfg /devicequery all_devices^|findstr /c:"Intel^(R^) HD Graphics"') do set test=%a
Ergänzung ()

firexs: Ok, das ging jetzt zeitgleich ^^
Ergänzung ()

Ich hab nun eine andere Lösung gefunden:
Powercfg /devicequery all_devices >%TEMP%\Hardware.txt
FINDSTR /x /c:"Intel(R) Display-Audio" %TEMP%\Hardware.txt
CLS
IF errorlevel 1 (
SET IDA=.
) else (
SET IDA="Intel Audio"
IF %IDA%=="Intel Audio" (echo Intel Audio)
(Wenn es nicht vorhanden wäre, würde das Script ja nichts dazu sagen dann)
 
Zurück
Oben