批处理 替换文本中指定内容
有一个文本内容如下,文本中有一行写有IP,行数会变动,这个IP也是随机的,需要通过批处理找到这个IP改成本机IP。如何通过批处理修改<addkey="IP"value="...
有一个文本内容如下,文本中有一行写有IP,行数会变动,这个IP也是随机的,需要通过批处理找到这个IP改成本机IP。如何通过批处理修改<add key="IP" value="192.168.23.4" />中的IP为本机IP。
以下为示例代码a.txt。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="IP" value="192.168.23.4" />
<add key="LocalIP" value=" 192.168.86.131" />
<add key="LocalServeVNC" value=" 202.32.54.47" />
<add key="QueueServerFormTitle" value="界面" />
</appSettings>
</configuration> 展开
以下为示例代码a.txt。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="IP" value="192.168.23.4" />
<add key="LocalIP" value=" 192.168.86.131" />
<add key="LocalServeVNC" value=" 202.32.54.47" />
<add key="QueueServerFormTitle" value="界面" />
</appSettings>
</configuration> 展开
2个回答
展开全部
@echo off & title 修改文件中IP地址 By 依梦琴瑶
::设置待修改的文件
set File=a.xml
::获取本机IP
for /f tokens^=1^,2^ delims^=^"^" %%a in ('wmic nicconfig get IPAddress /value ^| findstr /i "IPAddress=[^]"') do set "LocalIP=%%b"
::修改文件
(for /f "delims=" %%a in ('type "%File%"') do (
echo "%%~a"|findstr /i /c:"<add key=\"IP\" value=" >nul && (
echo ^<add key="IP" value="%LocalIP%" /^>
) || (
echo %%~a
)
))>File_Tmp$
move /y File_Tmp$ "%File%">nul
pause
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询