2017-12-22 2 views
1

Ich versuche, eine Datei zu lesen - sample.txt, nehmen Sie den Wert (zeilenweise) und wechseln Sie den entsprechenden Wert Ordner mit einer Schleife.Schleife durch jede Zeile mit Batch

sample.txt 

foo 
bar 
alpha 
bravo 
.. 
.. 

Beispiel: D: \ myProject \ MYWORK \ foo \ myFiles D: \ myProject \ MYWORK \ bar \ somenewFolder

Was ich mit

for /f "delims=" %%x in (sample.txt) do (
set value=%%x 
set folder=D:\myProject\myWork\%value%\somenewFolder 
echo %folder% 
) 

kam aber der Wert des Ordners ist leer. Ich bin mir nicht sicher, wo ich falsch gelaufen bin. Irgendwelche Ideen, danke.

Antwort

1

Sie ein delayed expansion benötigen:

setlocal enableDelayedExpansion 
for /f "delims=" %%x in (sample.txt) do (
set "value=%%x" 
set folder=D:\myProject\myWork\!value!\somenewFolder 
echo !folder! 
) 
+0

arbeitete wie ein Charme, danke! – dev

+0

versuchen Sie es mit 'echo"% del_folder% \ %% a "', um zu sehen, ob der Pfad korrekt ist und geändert werden muss. – npocmaka

+0

'"! Del_folder! \ %% a "' hat den Trick gemacht, danke, dass du es dir angeschaut hast. – dev

Verwandte Themen