koenigsberpe
Goto Top

Zeile in einer XML Datei suchen diese ersetzen und wieder abspeichern - mit einer Batch Datei

Hallo zusammen,

ich bin neu hier. Hab durch einige Beiträge schon einige Probleme lösen können, aber nun steh ich momentan komplett auf dem Schlauch.

Ich habe eine größere XML Datei und möchte eine genaue Zeile suchen und diese durch eine andere Ersetzten.

Da die Anwendung auf einem CE System läuft, kommt meines Wissen nur eine Batch File in Frage.

ich habe momentan folgenden Stand:

@echo off & setlocal enabledelayedexpansion

set "Datei=C:\VNCVIEWER_CEI\StartUp.xml"
set "Von=<OnlyView>True"
set "Nach=<OnlyView>FALSE"

set "t=%temp%\text.tmp"
if exist "%t%" del "%t%"
for /f "delims=" %%i in ('findstr /n $ "%Datei%"') do set "Line=%%i" & call :ProcessLine
move "%t%" "%Datei%"
goto :eof


:ProcessLine
for /f "tokens=1* delims=:" %%a in ("%Line%") do set "L=%%b"
if not defined L >>"%t%" echo\& goto :eof
"%t%" echo !L:%Von%=%Nach%!

goto :eof
pause

Das Thema ist er findet <> beziehungsweise kann diese nicht schreiben....

wahrscheinlich ist das eine Kleinigkeit, aber ich stehe auf dem Schlauch ....

Content-ID: 429045

Url: https://administrator.de/forum/zeile-in-einer-xml-datei-suchen-diese-ersetzen-und-wieder-abspeichern-mit-einer-batch-datei-429045.html

Ausgedruckt am: 03.04.2025 um 04:04 Uhr

laster
laster 17.03.2019 um 12:05:18 Uhr
Goto Top
Hallo koenigsberpe,

Du musst die "<" und ">" mit "^" 'escapen'.
set "Von=^<OnlyView^>True"  
set "Nach=^<OnlyView^>FALSE"  
vG
LS
koenigsberpe
koenigsberpe 18.03.2019 um 18:38:07 Uhr
Goto Top
Hallo vielen vielen Dank. Hat funktioniert.
jetzt noch ne andere frage:

Die Suche "von" bleibt, aber ich möchte die ganze Zeile, wo "von" gefunden wurde durch "nach" ersetzen ....