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-Clixml
wie 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 Deserialized
vorangestellt 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 $process
gespeichert. 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 |