Чтобы разбить строку вам нужна строка для разделения
for /F "delims=!" %%i in ("RegistrationPool!SubSystemService") DO (
echo Adding - %%i
)
Но это все равно будет печатать только один «Добавление» линии. Зачем?. for /f
будет перебирать файлы/строки, выполняя содержимое do
тела один раз в строке. У вас есть только одна строка (с двумя токенами, но одна строка), поэтому только одна итерация.
Вы можете получить доступ к второму элементу в качестве второго маркеров
for /F "tokens=1,2 delims=!" %%i in ("RegistrationPool!SubSystemService") DO (
echo Adding - %%i
echo Adding - %%j
)
Первого маркер хранится в указанном параметре сменного, и следующие маркеров в алфавитном порядке.
Но, если итерация по списку является то, что требуется, то правильная конструкция является
for %%i in ("RegistrationPool" "SubSystemService") DO (
echo Adding - %%i
)
Теперь есть for
команды итерации по списку элементов. Два элемента, две итерации, две строки «Добавление».
'(' должен быть на той же строке, что и 'DO' – Stephan
Благодаря этой помощи! , но теперь у меня возникла новая проблема: цикл повторяется только один раз – Kyle
Что именно вы пытаетесь сделать? – Stephan