Benutzer mit den meisten Antworten
Text in XML-Datei nummerieren

Frage
-
Hallo,
ich muss in XML-Dateien den Namen "port" umbenennen in "port1", "port2", "port3" usw. je nachdem, wie oft es auftaucht.
<entries name="ports">
<entries name="port">
<entry name="external_name" type="string">External Monitor</entry>
<entry name="internal_name" type="string">Not Available</entry>
<entry name="type" type="string">Video Port</entry>
<entry name="connector_type" type="string">DB-15 female</entry>
</entries>
<entries name="port">
<entry name="external_name" type="string">DisplayPort</entry>
<entry name="internal_name" type="string">Not Available</entry>
<entry name="type" type="string">Video Port</entry>
<entry name="connector_type" type="string">Other</entry>
</entries>
<entries name="port">
<entry name="external_name" type="string">Headphone/Microphone Combo Jack</entry>
<entry name="internal_name" type="string">Not Available</entry>
<entry name="type" type="string">Audio Port</entry>
<entry name="connector_type" type="string">Mini Jack (headphones)</entry>Ist das mit PowerShell machbar? Wenn ja, wie müsste das Script aussehen?
Vorab schon mal vielen Dank für eure Mühe!
Gruß Chris
Antworten
-
Schau mal hier.
Gruß, Denniver
Blog: http://bytecookie.wordpress.com
Kostenloser Powershell Code Manager v5: Link
(u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)
Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
Warum das Ganze? Hier gibts die Antwort.- Als Antwort markiert Denniver ReiningMVP, Moderator Montag, 6. März 2017 13:30
Alle Antworten
-
Schau mal hier.
Gruß, Denniver
Blog: http://bytecookie.wordpress.com
Kostenloser Powershell Code Manager v5: Link
(u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)
Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
Warum das Ganze? Hier gibts die Antwort.- Als Antwort markiert Denniver ReiningMVP, Moderator Montag, 6. März 2017 13:30
-
Hallo,
du kannst in dem Sinne nicht von Wort zu Wort "springen". Wenn du das Dokument einfach nur als Rohtext bearbeiten willst (ich hoffe, das reicht bei xml), musst du es Zeile für Zeile durchgehen. Das sähe etwa so aus:
$Zeilen = Get-Content "Pfad/ZU/Deiner/Datei.xml" $Zähler = 1 foreach($z in $Zeilen) { if($z -match '"port"') { $z -replace '"port"', ("port" + $Zähler) $Zähler++ } } $Zeilen | Out-File "Neuer/Pfad/Zur/Ausgabedatei.xml"
-
Sorry aber das ist keine Scriptfabrik hier. Wir helfen dir gerne, aber du musst schon etwas mitmachen.
Dazu gehört bei XML, zumindest die wichtigsten Grundlagen zu verstehen. Die kannst du über den wirklich sehr kurzen und übersichtlichen Artikel im Link oben lernen.
Darüber hinaus gibt es dann buchstäblich hunderte Beispiele im Netz die exakt deine Aufgabe abhandeln. Z.b. LINK
Blog: http://bytecookie.wordpress.com
Kostenloser Powershell Code Manager v5: Link
(u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)
Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
Warum das Ganze? Hier gibts die Antwort.- Bearbeitet Denniver ReiningMVP, Moderator Freitag, 3. März 2017 11:12