bladecom31
Goto Top

Sonderzeichen aus XML Löschen per batch

Hallo zusammen

Ich benötige eure Hilfe …

Wir haben einige XML Dateien, wo immer mal das @ Zeichen vorkommt ..

Gibt es die Möglichkeit diese zu löschen ?
( Nur das @ Zeichen ) per batch

So fange ich an …

FOR /F %%i IN ( ‘findstr /M “@“ D:Ort\*.xml‘)

Wie geht es dann weiter ..

Danke schon mal im Voraus…. schönes WE

Content-Key: 3175755048

Url: https://administrator.de/contentid/3175755048

Printed on: April 25, 2024 at 15:04 o'clock

Member: Endoro
Endoro Jun 25, 2022 at 16:48:45 (UTC)
Goto Top
Man soll eigentlich nach der reinen Lehre XML nicht mit sed bearbeiten, aber damit geht's am schnellsten.

sed "s/@//g" original.xml > korrektur.xml  
Member: bladecom31
bladecom31 Jun 25, 2022 at 16:59:16 (UTC)
Goto Top
Danke

Aber es passiert nichts …
Member: Endoro
Endoro Jun 25, 2022 updated at 17:28:58 (UTC)
Goto Top
Das Ergebnis müsste in "korrektur.xml" stehen.
der Pfad zu sed muss im Pfad der globalen Variablen "PATH=" stehen.
Member: bladecom31
bladecom31 Jun 25, 2022 at 17:30:47 (UTC)
Goto Top
Stehe gerade auf dem Schlauch ,wie wäre die komplette Schreibweise der Batch ?

Bildschirm flackert mehr nicht …
Member: Endoro
Endoro Jun 25, 2022 at 17:44:10 (UTC)
Goto Top
Du rufst über die Tastenkombination "Windows X" die Eingabeaufforderung auf. Es öffnet sich ein neues Fenster. Du gibst
sed -h
ein, was passiert?
Member: bladecom31
Solution bladecom31 Jun 25, 2022 at 17:55:34 (UTC)
Goto Top
Es passiert

Der Befehl “sed“ ist entweder falsch
geschrieben oder konnte nicht gefunden werden ….
Member: Endoro
Solution Endoro Jun 25, 2022 updated at 18:09:45 (UTC)
Goto Top
Dann ist sed nicht im PATH eingebunden. Du musst sed in deinen Verzeichnissen finden finden und dann etwa so vorgehen:
C:\Pfad-zu-sed.exe\sed "s/@//g" "C:\pfad-zu-origignal.xml\original.xml" > "C:\pfad-zu-origignal.xml\korrektur.xml"  

"C:" durch Deine entsprechenden Partitionen ersetzen.
Member: bladecom31
Solution bladecom31 Jun 25, 2022 at 18:15:25 (UTC)
Goto Top
Ohne der sed.exe funktioniert das nicht ?
Member: Endoro
Solution Endoro Jun 25, 2022 at 18:19:07 (UTC)
Goto Top
Doch, aber weil ich zu Apple gewechselt bin, habe ich einiges von Batch vergessen.
Aber ich kümmere mich darum und antworte, falls niemand anders mir zuvor kommt face-smile
Member: bladecom31
Solution bladecom31 Jun 25, 2022 at 18:23:49 (UTC)
Goto Top
Dank dir … ohne exe wär es super …
Member: colinardo
Solution colinardo Jun 25, 2022 updated at 19:27:54 (UTC)
Goto Top
Servus.
Mit Batch XML-Dateien zu bearbeiten ist keine gute Idee, schon wegen den Encodings etc. pp.
Wenn's sein muss (warum auch immer man keinen Parser benutzen will/kann und man das Risiko von ungültigem XML riskiert) dann doch zumindest mit etwas PowerShell Hilfe innerhalb der Batch
@echo off
powershell -EP Bypass -NoP -C "ls 'D:\Ort' -Filter *.xml | %%{(gc $_.Fullname) -replace '@' | sc $_.Fullname}"  

p.s. unsere Suche liefert dir genau zum Thema hunderte Ergebnisse, wäre ja nicht so als hätte das noch niemand gewollt 😉.

p.s.2. Wenn du das nächste mal die Kategorie eines Beitrags ändern willst musst du nicht extra einen neuen Beitrag erstellen, die Kategorie lässt sich auch nachträglich im Beitrag anpassen.

Grüße @colinardo (Mod)
Member: bladecom31
Solution bladecom31 Jun 25, 2022 at 19:16:32 (UTC)
Goto Top
Servus. zurück

Danke für die Hilfe

Heute ist nicht mein Tag -- ist noch was falsch ?

@echo off
powershell -EP Bypass -C "ls 'D:\BackupHPDatenalt /*.xml | %%{(gc $_.Fullname) -replace '@' | sc $_.Fullname}"
pause

Grüße
Member: colinardo
Solution colinardo Jun 25, 2022 updated at 19:25:05 (UTC)
Goto Top
ist noch was falsch ?
Ja. Schau dir mal meinen Pfad an und das was du da fabriziert und die Parameter verwurschtelst hast ...
@echo off
powershell -EP Bypass -NoP -C "ls 'D:\BackupHPDatenalt' -Filter *.xml | %%{(gc $_.Fullname) -replace '@' | sc $_.Fullname}"  
Heute ist nicht mein Tag
Dann hau dich in die Falle und mach es ein anderes mal vernünftig, und beschäftige nicht unötigerweise die Admins hier am Wochenende ... 🙃

P.s. was zum Lesen gegen deine Kopfschmerzen
Powershell Leitfaden für Anfänger
Member: bladecom31
Solution bladecom31 Jun 25, 2022 at 19:27:20 (UTC)
Goto Top
Mensch aber echt man man .. hat funktioniert ...
sorry für meine verwurschtelrei wenn es so ein Wort gibt ...

schönes rest WE ....

Grüße
Member: colinardo
Solution colinardo Jun 25, 2022 updated at 19:31:28 (UTC)
Goto Top
Zitat von @bladecom31:
wenn es so ein Wort gibt ...
Immerhin noch ertragbarer als Gendersternchen 🤪
https://de.m.wiktionary.org/wiki/verwurschteln
schönes rest WE ....
U2
Gruß @colinardo
Member: Endoro
Solution Endoro Jun 28, 2022 at 21:06:35 (UTC)
Goto Top
Ich bin vor Jahren auf Stack Overflow bis zum Goldstatus auf Batch gekommen. Aber die "Sprache" ist absolut oldschool. Es sei denn, der Admin hat Powershell blockiert. Danke @colinardo für die Lösung.

Gruss -Endoro
Member: bladecom31
Solution bladecom31 Jun 29, 2022 at 04:26:28 (UTC)
Goto Top
Danke auch Dir -Endoro für deine Mithilfe.. schönen Tag gewünscht.