Dela via


Import-Clixml

Importerar en CLIXML-fil och skapar motsvarande objekt i PowerShell.

Syntax

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

Description

Cmdleten Import-Clixml importerar en CLI-fil (Common Language Infrastructure) med data som representerar Microsoft .NET Framework-objekt och skapar PowerShell-objekten. Mer information om CLI finns i Language independence.

En värdefull användning av Import-Clixml på Windows-datorer är att importera autentiseringsuppgifter och skydda strängar som exporterades som säker XML med hjälp av Export-Clixml. Ett exempel finns i Exempel 2.

Import-Clixml använder byte-order-mark (BOM) för att identifiera kodningsformatet för filen. Om filen inte har någon strukturlista förutsätter den att kodningen är UTF8.

Exempel

Exempel 1: Importera en serialiserad fil och återskapa ett objekt

I det här exemplet används cmdleten Export-Clixml för att spara en serialiserad kopia av processinformationen som returneras av Get-Process. Import-Clixml hämtar innehållet i den serialiserade filen och återskapar ett objekt som lagras i variabeln $Processes.

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

Exempel 2: Importera ett objekt för säker autentiseringsuppgift

I det här exemplet kan du, med tanke på en autentiseringsuppgift som du har lagrat i $Credential-variabeln genom att köra Get-Credential-cmdleten, köra cmdleten Export-Clixml för att spara autentiseringsuppgifterna på disken.

Viktig

Export-Clixml exporterar endast krypterade autentiseringsuppgifter i Windows. I icke-Windows-operativsystem som macOS och Linux exporteras autentiseringsuppgifterna i klartext.

$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

Cmdleten Export-Clixml krypterar autentiseringsobjekt med hjälp av Windows Data Protection API. Krypteringen säkerställer att endast ditt användarkonto kan dekryptera innehållet i autentiseringsobjektet. Den exporterade CLIXML-filen kan inte användas på en annan dator eller av en annan användare.

I exemplet representeras filen där autentiseringsuppgifterna lagras av TestScript.ps1.credential. Ersätt TestScript- med namnet på skriptet som du läser in autentiseringsuppgifterna med.

Du skickar autentiseringsobjektet nedåt i pipelinen till Export-Clixmloch sparar det på sökvägen, $Credxmlpath, som du angav i det första kommandot.

Om du vill importera autentiseringsuppgifterna automatiskt till skriptet kör du de två sista kommandona. Kör Import-Clixml för att importera det skyddade autentiseringsobjektet till skriptet. Den här importen eliminerar risken för att exponera oformaterade lösenord i skriptet.

Parametrar

-First

Hämtar endast det angivna antalet objekt. Ange antalet objekt som ska hämtas.

Typ:UInt64
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-IncludeTotalCount

Rapporterar det totala antalet objekt i datauppsättningen följt av de markerade objekten. Om cmdleten inte kan fastställa det totala antalet visas Totalt antal okända. Heltalet har egenskapen Precision som anger tillförlitligheten för det totala antalet värden. Värdet för Noggrannhet sträcker sig från 0.0 till 1.0 där 0.0 innebär att cmdleten inte kunde räkna objekten, 1.0 innebär att antalet är exakt och ett värde mellan 0.0 och 1.0 anger en mer tillförlitlig uppskattning.

Typ:SwitchParameter
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-LiteralPath

Anger sökvägen till XML-filerna. Till skillnad från Pathanvänds värdet för parametern LiteralPath exakt som den skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken. Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-sekvenser.

Typ:String[]
Alias:PSPath, LP
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Path

Anger sökvägen till XML-filerna.

Typ:String[]
Position:0
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Skip

Ignorerar det angivna antalet objekt och hämtar sedan de återstående objekten. Ange antalet objekt som ska hoppa över.

Typ:UInt64
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

Indata

String

Du kan skapa en pipeline för en sträng som innehåller en sökväg till Import-Clixml.

Utdata

PSObject

Import-Clixml returnerar objekt som deserialiserats från de lagrade XML-filerna.

Kommentarer

När du anger flera värden för en parameter använder du kommatecken för att separera värdena. Till exempel <parameter-name> <value1>, <value2>.