Usar o comando FOR em um arquivo batch funciona um pouco diferente, porque os próprios batchfiles usam%? variáveis. Por esse motivo, o comando FOR requer que seu parâmetro seja %%? trabalhar.
Se você digitar FOR /? a partir de uma linha de comando, a ajuda também lhe dirá isso.
Portanto, o seguinte comando FOR seria o seguinte em um arquivo em lotes:
em cmd:
for %i IN (*.*) DO echo %i
no arquivo.bat:
for %%i IN (*.*) DO echo %%i