Compartilhar via


ConvertFrom-CliXml

Converte uma cadeia de caracteres formatada em CliXml em um PSObject personalizado.

Sintaxe

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

Description

O ConvertFrom-CliXml cmdlet converte cadeias de caracteres formatadas como XML da CLI (Common Language Infrastructure) em um PSObject personalizado. Esse comando é semelhante ao Import-Clixml, mas não lê de um arquivo. Em vez disso, ele usa uma string como entrada.

Os objetos recém-desserializados não são objetos dinâmicos. Eles são um instantâneo dos objetos no momento da serialização. Os objetos desserializados incluem propriedades, mas nenhum método. A propriedade PSTypeNames contém o nome do tipo original prefixado com Deserialized.

Esse cmdlet foi introduzido no PowerShell 7.5-preview.4.

Exemplos

Exemplo 1 – Converter um objeto de processo em CliXml e vice-versa

Este exemplo mostra o resultado da conversão de um objeto de processo em CliXml e vice-versa. Primeiro, o processo atual é armazenado na variável $process. A propriedade PSTypeNames do objeto de processo mostra que o objeto é do tipo System.Diagnostics.Process. O próximo comando exibe a contagem de cada tipo de membro no objeto de processo.

$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

Em seguida, o objeto de processo é convertido em CliXml e vice-versa. O tipo do novo objeto é prefixado com Deserialized. A contagem de membros no novo objeto é diferente do objeto original.

Parâmetros

-InputObject

O objeto que contém uma cadeia de caracteres formatada em CliXml a ser convertida.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

Entradas

String

Saídas

Object