Windows Commandline - for loop fejler med specifikke paths
Hey, jeg synes det er sjovt at lave små scripts der gør noget ved en/flere filer.Jeg plerjer at bruge et for loop
for %%a in (%*) do (
DO_SOMTHING %aa
)
- Dette virker 99% af gangene.. men fornyligt opdagede jeg at det kan fejle.
For at test, lav en c:\test.bat fil med inholdet:
ECHO ---------------------- > c:\testout.txt
for %%a in (%*) do (
ECHO %%a >> c:\testout.txt
)
Test#1.
Lav en tom textfil, i roden af c, med navnet "hej.txt"
Drag drop den fil oven på test.bat
Test#2.
Lav en mappe i c:\ med navnet: hej(foo.bar)
Inde i den mappe lav en tom hej.txt fil.
(så den komplette sti bliver c:\hej(foo.bar)\hej.txt
Drag drop oven på test.bat
Resultat:
Test#1: I testout.txt se a filnavnet bliver læst korrekt.
Test#2: filnavnet bliver IKKE outputtet i testout.txt
--------
Hvis man IKKE bruger forloopet..så virker det, så der er et eller/andet med dét der for %* som fejler..
--
Synes det er et svært spørgsmål, så 200 til den der kan løse det ^^