I wondered why the following CMD script was not processing some lines ...
for /f %a in (test.txt) do @echo %a
... with this sort of test where the semicolon is a field separator. All the lines were processed when the field separator is a space, tab or comma.
x;y;z ;y;z
When I ran the script, the echo
command is only called for the first line. It turns out that, by default, for /f
regards any line starting with a semicolon to be a comment and ignores it. It's similar to using:
for /f "eol=;" %a in (test.txt) do @echo %a
Note that the Microsoft documentation doesn't state the default for the eol keyword.
No comments:
Post a Comment