解析文本文件的值

时间:2014-09-29 19:40:06

标签: batch-file

我有这个文本文件:

NAME=MDF
VERSION=20140710
RELEASE_LIBRARY_DIRS=
DEBUG_LIBRARY_DIRS=
RELEASE_LIBRARIES=
DEBUG_LIBRARIES=
RELEASE_DEFINITIONS=
DEBUG_DEFINITIONS=

我想解析版本号并将其保存在变量中。我从未在批处理中做过这样的事情,for循环让我感到困惑。这就是我到目前为止所拥有的。主要来自其他来源。

@ECHO off

SET /P MYVAR=<MDFinfo.txt
ECHO MYVAR=%MYVAR%
FOR /f "tokens=1,2* delims==" %%I IN ( "%MYVAR%" ) DO (
    ECHO LINE=%%I
    ECHO RESULT=%%J
    SET /A RESULT=%%I
)
ECHO The number is: %RESULT%
pause

这是回应NAME和MDF但不是我想要的行。此外,当结果打印结束时,结果为0。 有人可以向我解释令牌和delims的工作原理吗?另外我如何提取版本号。无法更改文本文件。

由于

1 个答案:

答案 0 :(得分:2)

@echo off

FOR /f "delims=" %%I IN ( 'find /i "version=" ^< "c:\textfile.txt" ' ) DO (
   set "%%I"
)
echo %version%

未经测试