Quantcast
Channel: Windows PowerShell Forum
Viewing all articles
Browse latest Browse all 2314

In XML ähnlichen Dateien Wörter kopieren und an anderer Stelle einfügen

$
0
0

Hallo Community,

habe viele Filmverzeichnisse mit dazu gehörigen .nfo-Dateien, welche mit einer XML-Struktur ausgestattet sind. Dort möchte ich jeweils einen Satz in einer Zeile finden und diesen dann an anderer Stelle einfügen.

Also ich möchte den Inhalt von node <title> "das ist ja toll"</title>
in allen Zeilen bei den "Filmname" steht durch den Titel ersetzen.

Also: <thumb>M:\Film\FSK_\Filmname\.actors\Solomon Northup.jpg</thumb>
in: <thumb>M:\Film\FSK_\das ist ja toll\.actors\Solomon Northup.jpg</thumb>


Meine .nfo-Datei sieht so aus:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><movie><title>das ist ja toll</title>  # diesen Titel möchte ich kopieren
  <rating>8.200000</rating><year>2013</year></tagline><thumb>poster.jpg</thumb> # hier steht auch "thumb"!!!!<fanart><thumb>fanart.jpg</thumb> # hier steht auch "thumb"!!!!</fanart><mpaa>FSK 12</mpaa><genre>Drama</genre><country>United Kingdom</country><actor><name>lars zero</name><role>Solomon Northup</role><order>0</order><thumb>M:\Film\FSK_\Filmname\.actors\Solomon Northup.jpg</thumb></actor> # möchte "Filmname" nun ersetzen mit "das ist ja toll"<actor><name>das ist noch besser</name><role>Edwin Epps</role><order>1</order><thumb>M:\Film\FSK_\Filmname\.actors\das ist noch besser.jpg</thumb></actor> # möchte "Filmname" nun ersetzen mit "das ist ja toll"<actor><name>Benedict Cumberbatch</name><role>William Ford</role><order>2</order><thumb>M:\Film\FSK_\Filmname\.actors\Benedict Cumberbatch.jpg</thumb></actor> # möchte "Filmname" nun ersetzen mit "das ist ja toll"

Da es sich hier um mehrere Verzeichnisse handelt, arbeite ich auch mit Wildcards für die .nfo-Dateien.

Habe dazu folgenden Befehl kreiert, welcher aber noch nicht fertig geworden ist, da ich keinen blassen
Schimmer, wie ich nun mit dem Inhalt des Objekts weiterverfahren kann, um zu obigen Ergebnis zu kommen.

# Die Pfade
$Path = "C:\Film\*.nfo"

#$File = Get-ChildItem -Path -Recurse $Path -Filter '*nfo'

   $xml = [xml](Get-Content $Path)

   $xml | Select-Xml -XPath "//title" | ForEach {$_.node.InnerXML}

Könnt Ihr mir da bitte wieder weiter helfen?
Einen Tipp geben?

LG
Svensus


Viewing all articles
Browse latest Browse all 2314


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>