Batch - Über %PATH% iterieren

ZodiacXP

Erfahrenes Mitglied
Hallo,

ich wollte mit einer FOR-Schleife über alle Einträge in %PATH% iterieren und dachte es geht wie folgt:
Code:
FOR /F "delims=;" %%p IN ("%PATH%") DO (
    echo %%p
)

Entgegen meinen Erwartungen wird nur der erste Eintrag ausgegeben und die restlichen nicht. Was läuft hier falsch? Wie geht es besser?
 

deepthroat

Erfahrenes Mitglied
Hi.

Mit FOR /F kann man zeilenweise über Daten iterieren (und diese in Token auftrennen).

Du hast nur 1 Zeile angegeben, so wird die Schleife auch nur ein Mal durchlaufen.
Code:
set p=%path%
:loop
for /f "tokens=1,* delims=;" %%a in ("%p%") do (
    echo %%a
    set p=%%b
)
if "%p%" neq "" goto loop
Gruß
 
Zuletzt bearbeitet: