Export-Clixml
Erstellt eine XML-basierte Darstellung eines Objekts oder von Objekten und speichert sie in einer Datei.
Syntax
Export-Clixml
[-Path] <String>
-InputObject <PSObject>
[-Depth <Int32>]
[-Force]
[-NoClobber]
[-Encoding <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Export-Clixml
-LiteralPath <String>
-InputObject <PSObject>
[-Depth <Int32>]
[-Force]
[-NoClobber]
[-Encoding <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Export-Clixml
Cmdlet erstellt eine XML-basierte Darstellung eines Objekts oder objekts (CLI) und speichert sie in einer Datei. Anschließend können Sie das Import-Clixml
Cmdlet verwenden, um das gespeicherte Objekt basierend auf dem Inhalt dieser Datei neu zu erstellen.
Weitere Informationen zur CLI finden Sie unter Sprachenunabhängigkeit.
Dieses Cmdlet ähnelt ConvertTo-Xml
, mit der Ausnahme, dass Export-Clixml
die resultierende XML-Datei in einer Datei gespeichert wird. ConvertTo-XML
gibt den XML-Code zurück, damit Sie ihn in PowerShell weiter verarbeiten können.
Eine wertvolle Verwendung von Export-Clixml
auf Windows-Computern besteht darin, Anmeldeinformationen und sichere Zeichenfolgen sicher als XML zu exportieren. Ein Beispiel finden Sie unter Beispiel 3.
Beispiele
Beispiel 1: Exportieren einer Zeichenfolge in eine XML-Datei
In diesem Beispiel wird eine XML-Datei erstellt, die im aktuellen Verzeichnis eine Darstellung der Zeichenfolge This is a test speichert.
"This is a test" | Export-Clixml -Path .\sample.xml
Die Zeichenfolge Dies ist ein Test , der an die Pipeline gesendet wird. Export-Clixml
verwendet den Path-Parameter , um eine XML-Datei namens sample.xml
im aktuellen Verzeichnis zu erstellen.
Beispiel 2: Exportieren eines Objekts in eine XML-Datei
In diesem Beispiel wird veranschaulicht, wie Sie ein Objekt in eine XML-Datei exportieren können und wie Sie dann ein Objekt erstellen können, indem Sie den XML-Code aus der Datei importieren.
Get-Acl C:\test.txt | Export-Clixml -Path .\FileACL.xml
$fileacl = Import-Clixml -Path .\FileACL.xml
Das Get-Acl
Cmdlet ruft die Sicherheitsbeschreibung der Test.txt
Datei ab. Es sendet das Objekt nach unten in der Pipeline, um den Sicherheitsdeskriptor an zu Export-Clixml
übergeben. Die XML-basierte Darstellung des Objekts wird in einer Datei mit dem Namen FileACL.xml
gespeichert.
Das Import-Clixml
Cmdlet erstellt ein Objekt aus dem XML-Code in der FileACL.xml
Datei. Anschließend wird das Objekt in der $fileacl
Variablen gespeichert.
Beispiel 3: Verschlüsseln eines exportierten Anmeldeinformationsobjekts
In diesem Beispiel können Sie das Cmdlet ausführen, indem Sie die Anmeldeinformationen in der $Credential
Variablen gespeichert haben, indem Sie das Get-Credential
Cmdlet ausführen Export-Clixml
, um die Anmeldeinformationen auf dem Datenträger zu speichern.
Wichtig
Export-Clixml
exportiert nur verschlüsselte Anmeldeinformationen unter Windows. Unter Nicht-Windows-Betriebssystemen wie macOS und Linux werden Anmeldeinformationen als Nur-Text exportiert.
$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
Das Export-Clixml
Cmdlet verschlüsselt Anmeldeinformationsobjekte mithilfe der Windows Data Protection-API.
Die Verschlüsselung stellt sicher, dass nur Ihr Benutzerkonto auf diesem Computer den Inhalt des Anmeldeinformationsobjekts entschlüsseln kann. Die exportierte CLIXML
Datei kann nicht auf einem anderen Computer oder von einem anderen Benutzer verwendet werden.
Im Beispiel wird die Datei, in der die Anmeldeinformationen gespeichert sind, durch TestScript.ps1.credential
dargestellt. Ersetzen Sie TestScript durch den Namen des Skripts, mit dem Sie die Anmeldeinformationen laden.
Sie senden das Anmeldeinformationsobjekt in der Pipeline an Export-Clixml
und speichern es in dem Pfad, $Credxmlpath
den Sie im ersten Befehl angegeben haben.
Führen Sie die letzten beiden Befehle aus, um die Anmeldeinformationen automatisch in Ihr Skript zu importieren. Führen Sie aus Import-Clixml
, um das geschützte Anmeldeinformationsobjekt in Ihr Skript zu importieren. Durch diesen Import wird das Risiko beseitigt, dass Nur-Text-Kennwörter in Ihrem Skript verfügbar sind.
Parameter
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Depth
Gibt an, wie viele Ebenen der enthaltenen Objekte in der XML-Darstellung enthalten sind. Standardwert: 2
.
Der Standardwert kann für den Objekttyp in den Dateien überschrieben Types.ps1xml
werden. Weitere Informationen finden Sie unter about_Types.ps1xml.
Type: | Int32 |
Position: | Named |
Default value: | 2 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encoding
Gibt den Typ der Codierung für die Zieldatei an. Der Standardwert ist Unicode.
Die zulässigen Werte für diesen Parameter sind wie folgt:
- ASCII Verwendet ASCII (7-Bit)-Zeichensatz.
- BigEndianUnicode Verwendet UTF-16 mit der Big-Endian-Bytereihenfolge.
- Standard Verwendet die Codierung, die der aktiven Codepage des Systems (normalerweise ANSI) entspricht.
- OEM Verwendet die Codierung, die der aktuellen OEM-Codepage des Systems entspricht.
- Unicode Verwendet UTF-16 mit der Little-Endian-Bytereihenfolge.
- UTF7 Verwendet UTF-7.
- UTF8 Verwendet UTF-8.
- UTF32 Verwendet UTF-32 mit der Little-Endian-Bytereihenfolge.
Type: | String |
Accepted values: | ASCII, BigEndianUnicode, Default, OEM, Unicode, UTF7, UTF8, UTF32 |
Position: | Named |
Default value: | Unicode |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Erzwingt die Ausführung des Befehls ohne Aufforderung zur Bestätigung durch den Benutzer.
Bewirkt, dass das Cmdlet das Schreibschutzattribut der Ausgabedatei bei Bedarf deaktiviert. Das Cmdlet versucht, das Schreibschutzattribut zurückzusetzen, wenn der Befehl abgeschlossen ist.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Gibt das zu konvertierende Objekt an. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder einen Ausdruck ein, mit dem die Objekte abgerufen werden. Sie können objekte auch an pipen Export-Clixml
.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Gibt den Pfad zur Datei an, wo die XML-Darstellung des Objekts gespeichert wird. Im Gegensatz zu Path wird der Wert des LiteralPath-Parameters genau so verwendet, wie er eingegeben wird. Es werden keine Zeichen als Platzhalter interpretiert. Wenn der Pfad Escapezeichen enthält, müssen Sie ihn in einfache Anführungszeichen einschließen. Einzelne Anführungszeichen weisen PowerShell an, keine Zeichen als Escapesequenzen zu interpretieren.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoClobber
Gibt an, dass das Cmdlet den Inhalt einer vorhandenen Datei nicht überschreibt. Wenn eine Datei im angegebenen Pfad vorhanden ist, Export-Clixml
überschreibt die Datei standardmäßig ohne Warnung.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Gibt den Pfad zur Datei an, wo die XML-Darstellung des Objekts gespeichert wird.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
Sie können jedes Objekt an pipelineieren Export-Clixml
.
Ausgaben
Export-Clixml
erstellt eine Datei, die den XML-Code enthält.