Freigeben über


ConvertFrom-CliXml

Konvertiert eine cliXml-formatierte Zeichenfolge in ein benutzerdefiniertes PSObject.

Syntax

Default (Standardwert)

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

Beschreibung

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

Die neu deserialisierten Objekte sind keine Liveobjekte. Sie stellen eine Momentaufnahme der Objekte zum Zeitpunkt der Serialisierung dar. 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 Mitgliedstyp 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

Anschließend wird das Prozessobjekt in CliXml und zurück konvertiert. Der Typ des neuen Objekts wird mit Deserializedversehen. 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.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:0
Obligatorisch.:True
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

String

Ausgaben

Object