У меня вопрос к пакетной команде "for" в windows.
У меня есть файл с именем keys.txt, который содержит эту строку.
ключ, значение, x86, windows7
Я хочу проанализировать эту строку и сохранить 4 разделенные запятыми переменные в 4 переменных. Я выполняю это с помощью следующего пакетного сценария Windows.
for /F "tokens=1,2,3,4* delims=," %%i
in (keys.txt) do (
echo first is %%i
echo second is %%j
echo third is %%k
echo fourth is %%l
echo rest is %%m
echo -------------
)
Однако, когда я изменяю keys.txt на
ключ, значение ,, windows7
Третья переменная печатается как windows7. Я ожидаю, что третья переменная будет пустой, а четвертая переменная будет windows7. Если я дам пробел между двумя запятыми, как это
ключ, значение,, windows7
Затем печатается 3-я переменная как пустая, а 4-я переменная как Windows7.
Кто-нибудь знает, как сделать так, чтобы предыдущий случай (т. Е. Без пробела) также работал правильно?