我正在寻找一个批处理脚本来搜索文件中的变量并读取其值。 例: 我的文本文件的行为
VERSION=6.0.196.0
CS_VERSION=6.0
我希望我的批处理脚本找到变量VERSION
并将其值(6.0.196.0
)读取到我的批处理脚本中的变量PVERSION
,然后读取值CS_VERSION
( 6.0
)另一个变量DVERSION
。
我该怎么做? 搜索了一些类似的问题,但他们给我输出:
PVERSION==VERSION=6.0.196.0
DVERSION==CS_VERSION=6.0.
我只需输出
PVERSION=6.0.196.0
DVERSION=6.0.
请提前帮助和谢谢。
答案 0 :(得分:3)
单向(读取每一行,分隔=
并将lhs / rhs捕捉到%%A
& %%B
);
@echo off
setlocal EnableDelayedExpansion
for /F "eol= tokens=1,2 delims==," %%A in (the.file) do (
if "%%A"=="VERSION" (
set version=%%B
) else if "%%A"=="CS_VERSION" (
set cs_version=%%B
)
)
echo VERSION is %version%
echo CS_VERSION is %cs_version%
测试;
@echo off
@(
echo 1
echo 2
echo 3
echo 4
echo 5
echo 6
echo 7
echo 8
echo 9
echo 10
echo 11
echo 12
echo 13
echo 14
echo 15
echo 16
echo 17
echo VERSION=6.0.196.0
echo CS_VERSION=6.0
) > the.file
setlocal EnableDelayedExpansion
for /F "eol= tokens=1,2 delims==, skip=17" %%A in (the.file) do (
if "%%A"=="VERSION" (
set version=%%B
) else if "%%A"=="CS_VERSION" (
set cs_version=%%B
)
)
echo VERSION is %version%
echo CS_VERSION is %cs_version%