ConvertFrom-CliXml
Konwertuje ciąg w formacie CliXml na niestandardowy obiekt PSObject.
Składnia
ConvertFrom-CliXml
[-InputObject] <String>
[<CommonParameters>]
Opis
Polecenie ConvertFrom-CliXml
cmdlet konwertuje ciągi sformatowane jako xml infrastruktury języka wspólnego (CLI) na niestandardowy obiekt PSObject. To polecenie jest podobne do Import-Clixml
polecenia , ale nie jest odczytywane z pliku. Zamiast tego przyjmuje ciąg jako dane wejściowe.
Nowo zdeserializowane obiekty nie są obiektami dynamicznymi. Są to migawki obiektów w czasie serializacji. Zdeserializowane obiekty zawierają właściwości, ale nie są to metody. Właściwość PSTypeNames zawiera oryginalną nazwę typu poprzedzoną prefiksem Deserialized
.
To polecenie cmdlet zostało wprowadzone w programie PowerShell 7.5-preview.4.
Przykłady
Przykład 1 — konwertowanie obiektu procesu na interfejs Wiersza polecenia i z powrotem
W tym przykładzie pokazano wynik konwersji obiektu procesu na cliXml i z powrotem. Najpierw bieżący proces jest przechowywany w zmiennej $process
. Właściwość PSTypeNames obiektu procesu pokazuje, że obiekt jest typu System.Diagnostics.Process. Następne polecenie wyświetla liczbę dla każdego typu elementu członkowskiego w obiekcie procesu.
$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
Następnie obiekt procesu jest konwertowany na interfejs CliXml i z powrotem. Typ nowego obiektu ma prefiks Deserialized
. Liczba elementów członkowskich w nowym obiekcie różni się od oryginalnego obiektu.
Parametry
-InputObject
Obiekt zawierający ciąg w formacie CliXml, który ma zostać przekonwertowany.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |