有如下文件 11.txt
------------------------------------------------------(分隔符,请忽略)----------------------------
###############服务器信息设值,请勿手动修改#######
# CTI服务器IP
CTIServerIP=172.16.208.444
CTIPort=5001
CTI=0
------------------------------------------------------(分隔符,请忽略)----------------------------
现在我想修改172.16.208.444为172.16.208.18 ,5001修改为1005,其他行不修改,写了如下代码
echo off
for /f "tokens=1,2 delims==" %%a in (11.txt) do (
set front=%%a
set back=%%b
setlocal enabledelayedexpansion
if "!front: =!"=="CTIPort" set back=1005
if "!front: =!"=="CTIServerIP" set back=172.16.208.18
echo/!front!=!back!>>result.txt
endlocal
)pause
运行后发现,没有=号的行,,结尾处都出现了等于号,,然后我修改代码如下
echo off
for /f "tokens=1,2 delims==" %%a in (11.txt) do (
set front=%%a
set back=%%b
setlocal enabledelayedexpansion
if "!front: =!"=="CTIPort" (set back=1005 goto qq)
if "!front: =!"=="CTIServerIP" (set back=172.16.208.18 goto qq)
echo/!front!>>result.txt
goto ww
:qq
echo/!list!=!back!>>result.txt
:ww
endlocal
)
pause
但是只输出了第一行,不明白do()里是怎么循环执行的,,哪位帮忙下,感激不经啊