Вот два простых примера по моим комментариям:
Из командной строки, чтобы удовлетворить ваш cmd тег:
(For /F Delims^=: %A In ('Mode^|FindStr "COM[0-9]*:"')Do @For %B In (%A)Do @Set "var=%B")&Call Echo(%var%
Из пакетного файла, чтобы удовлетворить ваш пакетный файл тег:
@(For /F Delims^=: %%A In ('Mode^|FindStr "COM[0-9]*:"')Do @For %%B In (%%A)Do @Set "var=%%B")&Call Echo(%%var%%&Pause
Чтобы дополнить мой комментарий о WMI, вы можете попробовать:
Из командной строки:
For /F Skip^=1Delims^= %A In ('WMIC Path Win32_SerialPort Get DeviceID 2^>Nul')Do @For %B In (%A)Do @Echo(%B
Из пакетного файла:
@For /F Skip^=1Delims^= %%A In ('WMIC Path Win32_SerialPort Get DeviceID 2^>Nul')Do @For %%B In (%%A)Do @Echo(%%B&Pause