Mit Batch XML Tags ergänzen
Servus beinand,
Ich möchte gerne mit Native Batch Befehlen alle XML-Dateien in einem Verzeichnis folgendermaßen ergänzen:
Aus:
soll werden:
Bisher bin ich soweit:
Kann mir bitte jemand sagen, ob ich auf dem richtigen Weg bin. Insbesondere würde mich interessieren, wo mein Suchausdruck falsch ist, weil mein Zeilen-Log immer leer bleibt.
Für ernstgemeine Batch-Schnipsel bin ich immer dankbar.
Gruß, Ganzbaf
Ich möchte gerne mit Native Batch Befehlen alle XML-Dateien in einem Verzeichnis folgendermaßen ergänzen:
Aus:
<header>
</header>
<record>
</record>
<record>
</record>
<footer>
</footer>
<header>
</header>
<body>
<record>
</record>
<record>
</record>
</body>
<footer>
</footer>
Bisher bin ich soweit:
@echo off & setlocal enableDelayedExpansion
for %%i In (%BASE_DIR%\input\*.xml) do (
rem Zeile </header> finden
for /f "delims=:" %%s in ('findstr /r /i /n "$\/header\>" %%i') do if not defined Zeile set Zeile=%%s
echo %%~ni: Zeile %Zeile% >> %BASE_DIR%\LOG\Zeile.txt
rem Zeile danach einsetzen
rem Zeile <footer> finden
rem Zeile davor einsetzen
)
Kann mir bitte jemand sagen, ob ich auf dem richtigen Weg bin. Insbesondere würde mich interessieren, wo mein Suchausdruck falsch ist, weil mein Zeilen-Log immer leer bleibt.
Für ernstgemeine Batch-Schnipsel bin ich immer dankbar.
Gruß, Ganzbaf
Please also mark the comments that contributed to the solution of the article
Content-Key: 117009
Url: https://administrator.de/contentid/117009
Printed on: May 4, 2024 at 07:05 o'clock
2 Comments
Latest comment
Hallo Ganzbaf,
das $ Zeichen steht in einer RegEx für das Zeilenende und macht in deinem Findstr kiene Sinn.
Ausserdem kannst due in einem CMd Fenster die Befehle manuell testen bevor du sie in einem Batch einbaust.
Die Environment Variablen in deiner Zeile 02 hast du schon ausserhalb der Batch datei gesetzt?
Gruß
LotPings
das $ Zeichen steht in einer RegEx für das Zeilenende und macht in deinem Findstr kiene Sinn.
Ausserdem kannst due in einem CMd Fenster die Befehle manuell testen bevor du sie in einem Batch einbaust.
Die Environment Variablen in deiner Zeile 02 hast du schon ausserhalb der Batch datei gesetzt?
Gruß
LotPings