PackageDeployment Modul Hilfe

Package Deployment Module (DSM eScript Commands)

Read-XmlNode Cmdlet

Version 1.0.0.3

Read-XmlNode

Übersicht

Variable aus XML-Datei lesen

Syntax

Read-XmlNode [-NodeType] <String> [-Path] <String> [-XPathQuery] <String> [-ContinueOnError] [-Wow64] [[-Attribute] <String>] [[-Index] <Int32>] [-ResultVariable] <String> [[-IndexVariable] <String>] [[-HintPath] <String>] [[-Context] <String>] [<CommonParameters>]

Beschreibung

Dieser Befehl liest Informationen aus bestehenden XML-Dateien. Im Dialogfeld wird spezifiziert, welche Information (Element, Attribut, Inhalt) aus welcher XML-Datei gelesen werden soll. Wenn die Suche nach dem zu bearbeitenden Teil der XML-Datei mehrere Treffer findet, können Sie den gesuchten Treffer durch einen Index exakt bestimmen.

Parameter

-Attribute <String>

Enthält den Namen des gesuchten Attributs, wenn Typ des Eintrags = Attribut ausgewählt wurde. Der Platzhalter * ist erlaubt.

Erforderlich

Nein

Position

3

Pipeline-Eingaben akzeptieren

Nein

-Context <String>

User: Ausführung unter Benutzerkonto; Protokollierung in HKEY_CURRENT_USER, also für den Benutzer.
UserPerService: Benutzerbezogener Befehl, Ausführung mit DSM Runtime Service
Computer: Ausführung unter Benutzerkonto; Protokollierung in HKEY_LOCAL_MACHINE, also für den Computer.
Computer: Ausführung mit DSM Runtime Service; Protokollierung in HKEY_LOCAL_MACHINE, also für den Computer.

Erforderlich

Nein

Position

8

Pipeline-Eingaben akzeptieren

Nein

-ContinueOnError <SwitchParameter>

Setzt das Skript trotz eines aufgetretenen Fehlers im betreffenden Befehl fort

Erforderlich

Nein

Position

Named

Pipeline-Eingaben akzeptieren

Nein

-HintPath <String>

#TODO#

Erforderlich

Nein

Position

7

Pipeline-Eingaben akzeptieren

Nein

-Index <Int32>

Legt fest, welches Element gelesen werden soll, wenn die Abfrage mehrere Treffer in der XML-Datei zurückliefert. Zur Auswahl stehen: Erster Treffer (Vorgabe), Letzter Treffer, Bestimmter Index. Dazu muss angegeben werden an welcher Stelle der Trefferliste das gewünschte Element steht, z.B. 3 für das dritte Vorkommen in der XML-Datei.

Erforderlich

Nein

Position

4

Pipeline-Eingaben akzeptieren

Nein

-IndexVariable <String>

Legt die Variable fest, in welcher der Index des verwendeten Treffers gespeichert werden soll. Die Angabe erfolgt ohne %. Diese Variable kann verwendet werden, um den Maximalwert für eine Abfrageschleife zu bestimmen. In diesem Fall sollten Sie den Befehl Read-XmlNode mehrfach im eScript eintragen: zunächst nur zur Ermittlung des maximalen Index und dann in einer entsprechenden Schleife zum Auslesen der einzelnen gefundenen Werte.

Erforderlich

Nein

Position

6

Pipeline-Eingaben akzeptieren

Nein

-NodeType <String>

Auswahl des Typs des zu lesenden Teils der XML-Datei:
Element - Grundlegende Struktureinheit einer XML-Datei, die i.d.R. über einen Anfangs- und Ende-Tag verfügt.
Wird nach einem Element gesucht, enthält die Ergebnis-Variable nach Ausführung des Befehls das gesamte Element mit Anfangs- und Ende-Tag sowie dem vollständigen Inhalt zwischen diesen Tags. Die Suche nach einem Element gibt das vollständige Element zurück: z.B. <Object type="STRING">QueenMary</Object>.
Attribut eines Elements
Wird nach einem Attribut gesucht, enthält die Ergebnis-Variable nach Ausführung des Befehls den Wert des Attributs. Die Suche nach dem Attribut type im oben genannten Beispiel-Element ergibt: STRING
Inhalt eines Elements
Wird nach dem Inhalt gesucht, enthält die Ergebnis-Variable nach Ausführung des Befehls den gesamten Textinhalt des gesuchten Elements zwischen Anfangs- und Ende-Tag. Untergeordnete Elemente mit ihren zugehörigen Textinhalten sind nicht eingeschlossen. Die Suche nach dem Inhalt im oben genannten Beispiel-Element ergibt: QueenMary.

Erforderlich

Ja

Position

0

Pipeline-Eingaben akzeptieren

Nein

-Path <String>

Pfad und Name der zu lesenden XML-Datei. Falls nicht angegeben, wird die Erweiterung .XML automatisch verwendet.

Erforderlich

Ja

Position

1

Pipeline-Eingaben akzeptieren

Nein

-ResultVariable <String>

Legt die Variable fest, in der das Ergebnis des Befehls gespeichert werden soll. Die Angabe erfolgt ohne %.

Erforderlich

Ja

Position

5

Pipeline-Eingaben akzeptieren

Nein

-Wow64 <SwitchParameter>

Aus Kompatibilitätsgründen verwendet Ivanti DSM bei Datei- und Registryzugriffen standardmäßig den Ablageort für 32-Bit Anwendungen (sofern dieser sich von dem für 64-Bit Anwendungen unterscheidet). Bei Dateizugriffen hat dies zur Folge, dass bei x64-Systemen auf das %WinDir%\SysWOW64 Verzeichnis und nicht auf das %WinDir%\system32 Verzeichnis zugegriffen wird. Bei Registry-Befehlen werden (unter anderem) Zugriffe auf HKEY_LOCAL_MACHINE\SOFTWARE nach HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node umgeleitet. Der x64-Schalter bewirkt, dass bei der Ausführung des Skript-Befehls auf einem x64-Computer diese Umleitung von Datei- bzw Registryzugriffen abgeschaltet und der eScript-Befehl auf angegebenen Pfad ausgeführt wird. Beim Callscript-Befehl wird damit das Skript in einem 64-Bit Prozess ausgeführt.

Erforderlich

Nein

Position

Named

Pipeline-Eingaben akzeptieren

Nein

-XPathQuery <String>

Identifikation des zu bearbeitenden Teils der XML-Datei mithilfe der XPath-Syntax. Beispiel einer XPath-Abfrage: //Sample/node1/node2/Object[@type="STRING"]. In diesem Beispiel wird das Element Object unter Sample/node1/node2 gesucht, für welches type="STRING" gilt. Da bei einer solchen Abfrage meist mehrere Elemente gefunden werden, müssen Sie zusätzlich den Index festlegen.

Erforderlich

Ja

Position

2

Pipeline-Eingaben akzeptieren

Nein

<CommonParameters>

Weitere Informationen zu 'common parameters' finden Sie mit dem Kommando "Get-Help about_CommonParameters".