stefan4711 3 Geschrieben 18. April 2021 Melden Geschrieben 18. April 2021 (bearbeitet) Hallo allerseits, ich habe eine ganz einfache Frage (zumindest für Batchexperten): Der folgende Befehl gibt mir von einer Win Aufgabe die UserId aus: for /f %a in ('schtasks /query /TN _01_Task1 /XML ^|findstr "UserId"') DO Set "xml=%a" In einer batch, wo ich diese variable benötige funktioniert das jedoch nicht? Weiss jemand warum? Mein Codeschnipsel sieht so aus: @echo off for /f %%a in ('schtasks /query /TN _01_Regwerte_setzen /XML ^|findstr "UserId"') DO ( Set "xml=%%a" ) echo %xml% Vorweg erwähnt, PS ist in meinem Fall keine Alternative. lg Stefan bearbeitet 18. April 2021 von stefan4711 Zitieren
NilsK 2.978 Geschrieben 18. April 2021 Melden Geschrieben 18. April 2021 Moin, vor einer Stunde schrieb stefan4711: In einer batch, wo ich diese variable benötige funktioniert das jedoch nicht? nun wäre es noch hilfreich, wenn du angäbest, was denn nicht funktioniert und was stattdessen passiert. Allgemein stolpere ich über die Anführungsstriche in der Zuweisung. Normalerweise schreibt man: SET Var=Wert Gruß, Nils Zitieren
stefan4711 3 Geschrieben 18. April 2021 Autor Melden Geschrieben 18. April 2021 Achso, dachte das Problem geht aus dem Thema hervor, ich bekomme lediglich eine Meldung, dass Echo ausgeschaltet sei. Das mit den "" hatte ich bereits probiert, mal ohne, mal mit. lg Stefan Zitieren
daabm 1.386 Geschrieben 20. April 2021 Melden Geschrieben 20. April 2021 Such mal nach "delayed expansion"; das ist was Dir hier fehlt... Der Set in der For-Schleife kommt im Rest vom Batch nicht an, %xml% enthält "nichts". PS: Das XML eines geplanten Tasks so zu parsen wäre mir nie eingefallen - Powershell kann das deutlich besser. 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.