stefan4711 3 Geschrieben 18. April 2021 Melden Teilen 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 Link zu diesem Kommentar
NilsK 2.934 Geschrieben 18. April 2021 Melden Teilen 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 Link zu diesem Kommentar
stefan4711 3 Geschrieben 18. April 2021 Autor Melden Teilen 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 Link zu diesem Kommentar
daabm 1.354 Geschrieben 20. April 2021 Melden Teilen 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 Link zu diesem Kommentar
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.