Пакетный файл Windows - заменить строку в файле XML - PullRequest
0 голосов
/ 02 ноября 2011

У меня есть следующий XML-файл:

<?xml version="1.0"?>
    <configuration>
      <startup>
        <supportedRuntime version="v2.0.50727"/>
      </startup>
      <appSettings>
        <add key="Name1" value="Value1"/>
        <add key="Name2" value="Value2"/>
        <add key="Name3" value="Value3"/>
      </appSettings>
      <runtime>
        <legacyUnhandledExceptionPolicy enabled="true"/>
      </runtime>
    </configuration>

Мне нужно заменить «Value2» на «ServerName» с помощью программирования пакетных файлов Windows.

Может ли кто-нибудь помочь, поскольку я новичок в пакетном программировании Windows?

1 Ответ

3 голосов
/ 19 ноября 2011

Пакет будет иметь проблемы с символами <,>, ^ и &.Это будет работать, но сценарий JScript / VBScript (как указано в одном из комментариев) является гораздо лучшим решением.

Измените "ORIGINAL" на искомый текст, а "REPLACE" на новыйтекст.Я рекомендую для сценариев Windows изучать JScript.

@echo off
for /f "tokens=* delims=" %%f in ('type sometext.txt') do CALL :DOREPLACE "%%f"

GOTO :EOF
:DOREPLACE
SET INPUT=%*
SET OUTPUT=%INPUT:ORIGINAL=REPLACE%

for /f "tokens=* delims=" %%g in ('ECHO %OUTPUT%') do ECHO %%~g>>out.txt

EXIT /b

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