Поделиться через


ConvertFrom-CliXml

Преобразует строку в формате CliXml в настраиваемую PSObject.

Синтаксис

Default (По умолчанию)

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

Описание

Командлет ConvertFrom-CliXml преобразует строки, отформатированные как XML-код инфраструктуры общего языка (CLI) в настраиваемый PSObject. Эта команда похожа на Import-Clixml, но она не считывается из файла. Вместо этого он принимает строку в качестве входных данных.

Новые десериализованные объекты не являются активными объектами. Они представляют собой снимок объектов на момент сериализации. Десериализированные объекты включают свойства, но не методы. Свойство pstypenames содержит префикс имени исходного типа, префиксированного Deserialized.

Этот командлет был введён в PowerShell 7.5-preview.4.

Примеры

Пример 1. Преобразование объекта процесса в CliXml и обратно

В этом примере показан результат преобразования объекта процесса в CliXml и обратно. Во-первых, текущий процесс хранится в переменной $process. Свойство pstypenames объекта процесса показывает, что объект имеет тип System.Diagnostics.Process. Следующая команда отображает количество элементов каждого типа в объекте процесса.

$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

Затем объект процесса преобразуется в CliXml и обратно. Тип нового объекта префиксируется Deserialized. Количество элементов в новом объекте отличается от исходного объекта.

Параметры

-InputObject

Объект, содержащий преобразованную строку в формате CliXml.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:0
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

String

Выходные данные

Object