Пакетный файл для циклов - несколько строк

Почему следующие строки будут работать в командном файле?

 for  %%a in ("C:\Test\*.txt") do set FileName=%%~a
 echo Filename is: %FileName%

Но они выигралит ?:

 for  %%a in ("C:\Test\*.txt") do (
     set FileName=%%~a
     echo Filename is: %FileName%
 )

Это'это как "а" переменная isn 'сохранено на второй линии. Почему это так и как мне использовать содержимое "а" как во втором примере?

Ответы на вопрос(1)

Ваш ответ на вопрос