Разделить переменную на 2 переменные в cmd
Обрабатываю строки в файле:
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do (...)
В файле содержатся строки с пробелом:
123456 123
865234 80
365842 1260
В строке всегда только 2 слова и разделены они пробелом.
Вопрос: Как переменную %%i разделить смотря по пробелу на 2 переменные, чтобы в дальнейшем работать с ними.
Например:
%%i=123456 123
...
echo !str1! -----123456
echo !str2! -----123
Ответы (1 шт):
For /F "usebackq tokens=1,2" %%i In ("%file%") Do (
echo %%i
echo %%j
)
Если delims не указан - используется пробел/табуляция. Т.е. можно и "usebackq tokens=1,2 delims= " - указать строго пробел.
И с используемым разделителем забираем токены номер 1 и 2. Первый кладётся в переменную %%i, второй - в следующую по алфавиту, т.е. %%j.
Примечание. При использовании параметра usebackq - не используйте список разделителей!!! В CMD имеется баг, который приводит к неправильной обработке списка разделителей.