Не могли бы вы попробовать следующее:
for /f "usebackq" %%a in (`type %COM%`) do (
set y=%%a
)
echo %y%
Распространенный вывод команды может быть обычной переменной. (аналогично var=$(command)
в bash
)
help for
говорит:
FOR /F ["options"] %variable IN (`command`) DO command [command-parameters]
(snip)
usebackq - specifies that the new semantics are in force,
where a back quoted string is executed as a
command and a single quoted string is a
literal string command and allows the use of
double quotes to quote file names in
file-set.
Имеется несколько параметров, и help for
будет информативным.