Freigeben über


ConvertFrom-CliXml

Konvertiert eine cliXml-formatierte Zeichenfolge in ein benutzerdefiniertes PSObject.

Syntax

ConvertFrom-CliXml
                [-InputObject] <String>
                [<CommonParameters>]

Beschreibung

Das ConvertFrom-CliXml Cmdlet konvertiert Zeichenfolgen, die als CLI-XML (Common Language Infrastructure) formatiert sind, in ein benutzerdefiniertes PSObject. Dieser Befehl ist ähnlich Import-Clixmlwie eine Datei, liest aber nicht aus einer Datei. Stattdessen wird eine Zeichenfolge als Eingabe verwendet.

Die neu deserialisierten Objekte sind keine Liveobjekte. Sie sind eine Momentaufnahme der Objekte zum Zeitpunkt der Serialisierung. Die deserialisierten Objekte enthalten Eigenschaften, jedoch keine Methoden. Die pstypenames-Eigenschaft enthält den ursprünglichen Typnamen, dem Deserializedvorangestellt ist.

Dieses Cmdlet wurde in PowerShell 7.5-preview.4 eingeführt.

Beispiele

Beispiel 1: Konvertieren eines Prozessobjekts in CliXml und zurück

Dieses Beispiel zeigt das Ergebnis der Konvertierung eines Prozessobjekts in CliXml und zurück. Zuerst wird der aktuelle Prozess in der Variablen $processgespeichert. Die pstypenames Eigenschaft des Prozessobjekts zeigt, dass das Objekt vom Typ System.Diagnostics.Processist. Der nächste Befehl zeigt die Anzahl für jeden Elementtyp im Prozessobjekt an.

$process = Get-Process -Id $PID
$process.pstypenames

System.Diagnostics.Process
System.ComponentModel.Component
System.MarshalByRefObject
System.Object

$process | Get-Member | Group-Object MemberType | Select-Object Name, Count

Name           Count
----           -----
AliasProperty      7
CodeProperty       1
Property          52
NoteProperty       1
ScriptProperty     8
PropertySet        2
Method            19
Event              4

$xml = $process | ConvertTo-CliXml
$fromXML = ConvertFrom-CliXml $xml
$fromXML.pstypenames

Deserialized.System.Diagnostics.Process
Deserialized.System.ComponentModel.Component
Deserialized.System.MarshalByRefObject
Deserialized.System.Object

$fromXML | Get-Member | Group-Object MemberType | Select-Object Name, Count

Name         Count
----         -----
Property        46
NoteProperty    17
PropertySet      2
Method           2

Als Nächstes wird das Prozessobjekt in CliXml und zurück konvertiert. Dem Typ des neuen Objekts wird das Präfix vorangestellt Deserialized. Die Anzahl der Elemente im neuen Objekt unterscheidet sich von dem ursprünglichen Objekt.

Parameter

-InputObject

Das Objekt, das eine cliXml-formatierte Zeichenfolge enthält, die konvertiert werden soll.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

Eingaben

Ausgaben