Я не вижу никакой пользы в установке неизвестного количества подключенных устройств для однобуквенных переменных, если вы не знаете, сколько было возвращено подключенным, вы не будете знать, какие проверяемые определены.
Тем не менее, следующий код должен выполнять именно ту задачу, которую вы указали в своем вопросе:
@Echo Off
SetLocal EnableExtensions EnableDelayedExpansion
Set "i=96"&For /F Skip^=1 %%G In ('adb.exe devices 2^>NUL')Do Set /A i+=1&cmd.exe /C "Exit /B !i!"&Set "!=ExitCodeASCII!=%%G"
Если по причине, которую я упомянул при открытии, теперь вам нужно визуальное подтверждение устройств, которые вы определили , вы, вероятно, могли бы расширить код следующим образом:
@Echo Off
SetLocal EnableExtensions EnableDelayedExpansion
Set "i=96"&For /F Skip^=1 %%G In ('adb.exe devices 2^>NUL')Do Set /A i+=1&cmd.exe /C Exit /B !i!&Set "!=ExitCodeASCII!=%%G"
If %i% Lss 97 GoTo :EOF
Set /A i-=96&Set "letters=0abcdefghijklmnopqrstuvwxyz"&Echo You have !i! devices
(For /L %%G In (1,1,%i%)Do For /F %%H In ("!letters:~%%G,1!")Do Echo %%%%H%% = !%%H!)&Pause