Обновление : если количество элементов в списке неизвестно, все еще можно проанализировать все элементы с помощью простой рекурсии в заголовке списка. (Я изменил IP-адреса на простые числа для простоты списка)
Наконец, тот класс Lisp, который я взял 18 лет назад, окупился ...
@echo off
setlocal
set servers=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24
echo %servers%
call :parse "%servers%"
goto :eos
:parse
set list=%1
set list=%list:"=%
FOR /f "tokens=1* delims=," %%a IN ("%list%") DO (
if not "%%a" == "" call :sub %%a
if not "%%b" == "" call :parse "%%b"
)
goto :eos
:sub
echo %1
goto :eos
:eos
endlocal