On this question, this remains unanswered:
Is there an explanation for why I can get away with using just one percent sign in a FOR loop, when executed directly from a command prompt, and not from a batch file? I know about the DOS heritage, but we can use variables from a command line now.
You can use environment variables on the command line so why is something like FOR /L %A in (1,1,5) Do Echo %A not interpreted as the %A in (1,1,5) Do Echo % environment variable on the command line as well?