Freigeben über


ConvertTo-CliXml

Konvertiert ein Objekt in eine cliXml-formatierte Zeichenfolge.

Syntax

ConvertTo-CliXml
              [-InputObject] <PSObject>
              [-Depth <Int32>]
              [<CommonParameters>]

Beschreibung

Das ConvertTo-CliXml Cmdlet konvertiert Objekte in Zeichenfolgen, die als CLI-XML (Common Language Infrastructure) formatiert sind. Dieser Befehl ist ähnlich wie Export-Clixml, aber er schreibt nicht in eine Datei. Stattdessen wird eine Zeichenfolge ausgegeben.

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.Process ist. 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

-Depth

Gibt an, wie viele Ebenen der enthaltenen Objekte in der XML-Darstellung enthalten sind. Die Standardwerte sind 2.

Typ:Int32
Position:Named
Standardwert:2
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Das Objekt, das in eine cliXml-formatierte Zeichenfolge konvertiert werden soll.

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

Eingaben

PSObject

Ausgaben

String