Warum verzögert sich die Expansionsarbeit nicht als Parameter in einem for-Befehl [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Verschachtelter Stapel für Schleifen 4 Antworten

Ich möchte einige for-Schleifen für jeden in einer Variablen angegebenen Pfad ausführen. Dasecho !temp! funktioniert gut, aber die folgenden Befehle funktionieren nicht:

@echo off
setlocal enabledelayedexpansion

set paths=(C:\test C:\test2)

for %%p in %paths% do (
    set temp=%%p
    echo !temp!
    for /r !temp! %%f in (*.h) do (echo %%f)
    for /r !temp! %%g in (*.h *.cpp) do (echo %%g)
)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage