共用方式為


Import-Clixml

匯入 CLIXML 檔案,並在 PowerShell 中建立對應的物件。

Syntax

Import-Clixml
      [-Path] <String[]>
      [-IncludeTotalCount]
      [-Skip <UInt64>]
      [-First <UInt64>]
      [<CommonParameters>]
Import-Clixml
      -LiteralPath <String[]>
      [-IncludeTotalCount]
      [-Skip <UInt64>]
      [-First <UInt64>]
      [<CommonParameters>]

Description

Cmdlet 會Import-Clixml匯入 Common Language Infrastructure (CLI) XML 檔案,其中包含代表 Microsoft .NET Framework 物件並建立 PowerShell 物件的數據。 如需 CLI 的詳細資訊,請參閱 語言獨立

在 Windows 電腦上, Import-Clixml 有一個寶貴的用法是匯入認證和安全字串,這些字串是使用 Export-Clixml匯出為安全的 XML。 如需範例,請參閱範例 2。

Import-Clixml 會使用位元組順序標記 (BOM) 來偵測檔案的編碼格式。 如果檔案沒有 BOM,則會假設編碼方式為 UTF8。

範例

範例 1:匯出序列化的檔案並重新建立物件

此範例會 Export-Clixml 使用 Cmdlet 來儲存 所 Get-Process傳回之進程資訊的串行化複本。 Import-Clixml 會擷取串行化檔案的內容,並重新建立儲存在變數中的 $Processes 物件。

Get-Process | Export-Clixml -Path .\pi.xml
$Processes = Import-Clixml -Path .\pi.xml

範例 2:匯入安全認證物件

在此範例中,假設您已藉由執行 Get-Credential Cmdlet 將認證儲存在變數中$Credential,您可以執行 Export-Clixml Cmdlet 將認證儲存至磁碟。

重要

Export-Clixml 只會在 Windows 上匯出加密的認證。 在macOS和Linux等非 Windows 作業系統上,認證會以純文字匯出。

$Credxmlpath = Join-Path (Split-Path $Profile) TestScript.ps1.credential
$Credential | Export-Clixml $Credxmlpath
$Credxmlpath = Join-Path (Split-Path $Profile) TestScript.ps1.credential
$Credential = Import-Clixml $Credxmlpath

Cmdlet Export-Clixml 會使用 Windows 資料保護 API 來加密認證物件。 加密可確保只有您的用戶帳戶可以解密認證對象的內容。 導出的 CLIXML 檔案不能在不同的計算機上或由不同的使用者使用。

在此範例中,儲存認證的檔案會以 TestScript.ps1.credential表示。 將 TestScript 取代為您正在載入認證的腳本名稱。

您會將認證物件向下傳送至 Export-Clixml,並將它儲存到您在第一個命令中指定的路徑 $Credxmlpath

若要將認證自動匯入至您的指令碼,請執行最後兩個命令。 執行 Import-Clixml 以將受保護的認證物件匯入腳本中。 此匯入可消除在文稿中公開純文本密碼的風險。

參數

-First

只取得指定數目的物件。 輸入要取得的物件數目。

Type:UInt64
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeTotalCount

報告數據集中的物件總數,後面接著選取的物件。 如果 Cmdlet 無法判斷總計數,則會顯示 未知的總計數。 整數具有 Accuracy 屬性,表示總計數值的可靠性。 精確度值的範圍從 0.01.00.0表示 Cmdlet 無法計算物件、1.0表示計數是確切的,以及 介於和 1.0 之間的0.0值表示越來越可靠的估計值。

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LiteralPath

指定 XML 檔案的路徑。 不同於Path,LiteralPath 參數的值會與輸入時完全相同。 沒有字元會被視為萬用字元。 如果路徑包含逸出字元,請將它括在單引號中。 單引號會指示PowerShell不要將任何字元解譯為逸出序列。

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

指定 XML 檔案的路徑。

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Skip

略過指定的物件數目,並取得剩餘的物件。 輸入要略過的物件數目。

Type:UInt64
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

String

您可以管線包含 路徑的 Import-Clixml字串。

輸出

PSObject

Import-Clixml 會傳回從預存 XML 檔案還原串行化的物件。

備註

當指定參數的多個值時,請使用逗號分隔值。 例如: <parameter-name> <value1>, <value2>