ConvertTo-CliXml
將物件轉換成 CliXml 格式的字串。
語法
ConvertTo-CliXml
[-InputObject] <PSObject>
[-Depth <Int32>]
[<CommonParameters>]
Description
Cmdlet 會將 ConvertTo-CliXml
物件轉換成格式化為 Common Language Infrastructure (CLI) XML 的字串。 此命令類似於 Export-Clixml
,但不會寫入檔案。 相反地,它會輸出字串。
此 Cmdlet 是在 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
。 新物件中的成員計數與原始物件不同。
參數
-Depth
指定 XML 表示法中包含多少個自主物件的層級。 預設值為 2。
類型: | Int32 |
Position: | Named |
預設值: | 2 |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-InputObject
要轉換成 CliXml 格式字串的物件。
類型: | PSObject |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |