BATCH, чтобы получить определенную строку из текстового файла - PullRequest
2 голосов
/ 30 октября 2019

Я хотел бы установить параметр, который я могу найти в текстовом файле. Это конкретная строка, она находится в первой строке после символа «=».

Пример: description.txt

card=0123456789
status=false

Я должен взять строку "0123456789" и установить параметр% str%. Я пробовал это, но это не работает:

for /f "tokens=2 delims= " %%a in ('type C:\tmp\description.txt^|find "card="') do (
set str=%%a & goto :continue
)
:continue
echo %str%

pause

как я могу получить текст после "=" в первой строке?

TIA

// khs

Ответы [ 2 ]

2 голосов
/ 30 октября 2019

Вы должны установить разделы следующим образом "delims=="

@echo off
for /f "tokens=2 delims==" %%a in ('type "C:\tmp\description.txt" ^|findstr /bi "card="') do (
    set "str=%%a" & goto :continue
)
:continue
echo "%str%"
pause
0 голосов
/ 01 ноября 2019

Вот код:

for /f "tokens=2 delims==" %%a in ('type C:\tmp\description.txt' | find "card"') do echo %%a

Требуется дополнительный разделитель =. В противном случае это не сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...