Export-FormatData
Speichert Formatierungsdaten aus der aktuellen Sitzung in einer Formatierungsdatei.
Syntax
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-Path <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-LiteralPath <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Beschreibung
Das Export-FormatData
Cmdlet erstellt PowerShell-Formatierungsdateien (format.ps1xml) aus den Formatierungsobjekten in der aktuellen Sitzung. Es verwendet die ExtendedTypeDefinition -Objekte, die Get-FormatData
sie zurückgeben und in einer Datei im XML-Format speichern.
PowerShell verwendet die Daten in Formatierungsdateien (format.ps1xml), um die Standardanzeige von Microsoft .NET Framework-Objekten in der Sitzung zu generieren. Sie können die Formatierungsdateien anzeigen und bearbeiten und mit dem Update-FormatData-Cmdlet Formatierungsdaten zu einer Sitzung hinzufügen.
Weitere Informationen zum Formatieren von Dateien in PowerShell finden Sie unter about_Format.ps1xml.
Beispiele
Beispiel 1: Exportieren von Sitzungsformatdaten
Get-FormatData -TypeName "*" | Export-FormatData -Path "allformat.ps1xml" -IncludeScriptBlock
Mit diesem Befehl werden alle Formatdaten in der Sitzung in die Datei AllFormat.ps1xml exportiert.
Der Befehl verwendet das Get-FormatData
Cmdlet, um die Formatdaten in der Sitzung abzurufen. Ein Wert von *
(allen) für den TypeName-Parameter leitet das Cmdlet an, um alle Daten in der Sitzung abzurufen.
Der Befehl verwendet einen Pipelineoperator (|
), um die Formatdaten vom Get-FormatData
Befehl an das Export-FormatData
Cmdlet zu senden, wodurch die Formatdaten in die Datei AllFormat.ps1 exportiert werden.
Der Export-FormatData
Befehl verwendet den IncludeScriptBlock-Parameter , um Skriptblöcke in die Formatdaten in der Datei einzuschließen.
Beispiel 2: Exportieren von Formatdaten für einen Typ
$F = Get-FormatData -TypeName "helpinfoshort"
Export-FormatData -InputObject $F -Path "c:\test\help.format.ps1xml" -IncludeScriptBlock
Diese Befehle exportieren die Formatdaten für den HelpInfoShort-Typ in die Datei "Help.format.ps1xml".
Der erste Befehl verwendet das Get-FormatData
Cmdlet, um die Formatdaten für den HelpInfoShort-Typ abzurufen und in der $F
Variablen zu speichern.
Der zweite Befehl verwendet den InputObject-Parameter des Export-FormatData
Cmdlets, um die in der $F
Variablen gespeicherten Formatdaten einzugeben. Außerdem wird der IncludeScriptBlock-Parameter verwendet, um Skriptblöcke in die Ausgabe einzuschließen.
Beispiel 3: Exportieren von Formatdaten ohne Skriptblock
Get-FormatData -TypeName "System.Diagnostics.Process" | Export-FormatData -Path process.format.ps1xml
Update-FormatData -PrependPath ".\process.format.ps1xml"
Get-Process p*
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
323 5600 powershell
336 3900 powershell_ise
138 4076 PresentationFontCache
Dieses Beispiel zeigt den Effekt, den IncludeScriptBlock-Parameter aus einem Export-FormatData
Befehl wegzulassen.
Der erste Befehl verwendet das Get-FormatData
Cmdlet, um die Formatdaten für das Vom Get-Process-Cmdlet zurückgegebene System.Diagnostics.Process-Objekt abzurufen. Der Befehl verwendet einen Pipelineoperator (|
), um die Formatierungsdaten an das Export-FormatData
Cmdlet zu senden, wodurch sie in die Datei "Process.format.ps1xml" im aktuellen Verzeichnis exportiert werden.
In diesem Fall verwendet der Export-FormatData
Befehl nicht den IncludeScriptBlock-Parameter .
Der zweite Befehl verwendet das Update-FormatData
Cmdlet, um der aktuellen Sitzung die Datei Process.format.ps1xml hinzuzufügen. Der Befehl verwendet den PrependPath-Parameter , um sicherzustellen, dass die Formatierungsdaten für Prozessobjekte in der Datei Process.format.ps1xml gefunden werden, bevor die Standardformatierungsdaten für Prozessobjekte gefunden werden.
Der dritte Befehl zeigt die Auswirkungen dieser Änderung. Der Befehl verwendet das Get-Process
Cmdlet zum Abrufen von Prozessen mit Namen, die mit P beginnen. Die Ausgabe zeigt, dass Eigenschaftswerte, die mithilfe von Skriptblöcken berechnet werden, in der Anzeige fehlen.
Parameter
-Force
Erzwingt die Ausführung des Befehls ohne Aufforderung zur Bestätigung durch den Benutzer.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-IncludeScriptBlock
Gibt an, ob Skriptblöcke in den Formatdaten exportiert werden.
Da Skriptblöcke Code enthalten und böswillig verwendet werden können, werden sie standardmäßig nicht exportiert.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InputObject
Gibt die Formatdatenobjekte an, die exportiert werden sollen. Geben Sie eine Variable ein, die die Objekte oder einen Befehl enthält, der die Objekte abruft, z. B. einen Get-FormatData
Befehl. Sie können die Objekte auch von Get-FormatData
zu Export-FormatData
.
Typ: | ExtendedTypeDefinition[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-LiteralPath
Gibt einen Speicherort für die Ausgabedatei an. Im Gegensatz zum Path-Parameter wird der Wert von LiteralPath 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. Einfache Anführungszeichen weisen PowerShell an, keine Zeichen als Escapesequenzen zu interpretieren.
Typ: | String |
Aliase: | PSPath, LP |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-NoClobber
Gibt an, dass das Cmdlet vorhandene Dateien nicht überschreibt. Standardmäßig werden Dateien ohne Warnung überschrieben, es sei denn, Export-FormatData
die Datei verfügt über das schreibgeschützte Attribut.
Export-FormatData
Verwenden Sie den Parameter Force, um schreibgeschützte Dateien zu überschreiben.
Typ: | SwitchParameter |
Aliase: | NoOverwrite |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Path
Gibt einen Speicherort für die Ausgabedatei an.
Geben Sie einen Pfad (optional) und Dateinamen mit der Dateinamenerweiterung format.ps1xml ein.
Wenn Sie den Pfad weglassen, Export-FormatData
wird die Datei im aktuellen Verzeichnis erstellt.
Wenn Sie eine andere Dateinamenerweiterung als PS1xml verwenden, erkennt das Update-FormatData
Cmdlet die Datei nicht.
Wenn Sie eine vorhandene Datei angeben, Export-FormatData
wird die Datei ohne Warnung überschrieben, es sei denn, die Datei verfügt über das schreibgeschützte Attribut. Verwenden Sie den Force-Parameter , um eine schreibgeschützte Datei zu überschreiben. Um zu verhindern, dass Dateien überschrieben werden, verwenden Sie den Parameter NoClobber .
Typ: | String |
Aliase: | FilePath |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Sie können ExtendedTypeDefinition-Objekte von Get-FormatData
diesem Cmdlet aus weiterleiten.
Ausgaben
None
Dieses Cmdlet gibt keine Ausgabe zurück. Es generiert eine Datei und speichert sie im angegebenen Pfad.
Hinweise
- Um eine beliebige Formatierungsdatei zu verwenden, einschließlich einer exportierten Formatierungsdatei, muss die Ausführungsrichtlinie für die Sitzung die Ausführung von Skripten und Konfigurationsdateien zulassen. Weitere Informationen finden Sie unter Informationen zu Ausführungsrichtlinien.