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

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

 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%
 )

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

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

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