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.0
到 1.0
,0.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 |
輸入
您可以管線包含 路徑的 Import-Clixml
字串。
輸出
PSObject
Import-Clixml
會傳回從預存 XML 檔案還原串行化的物件。
備註
當指定參數的多個值時,請使用逗號分隔值。 例如: <parameter-name> <value1>, <value2>
。