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 Cmdlet Export-FormatData
erstellt PowerShell-Formatierungsdateien (format.ps1xml) aus den Formatierungsobjekten in der aktuellen Sitzung. Sie verwendet die ExtendedTypeDefinition- Objekte, die Get-FormatData
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 das Cmdlet Update-FormatData verwenden, um einer Sitzung die Formatierungsdaten hinzuzufügen.
Weitere Informationen zum Formatieren von Dateien in PowerShell finden Sie unter about_Format.ps1xml.
Beispiele
Beispiel 1: Exportieren von Sitzungsformatdaten
Get-FormatData -TypeName "*" -PowerShellVersion 5.1 | 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 Cmdlet Get-FormatData
, um die Formatdaten in der Sitzung abzurufen. Der Wert *
(alle) für den TypeName Parameter leitet das Cmdlet an, um alle Daten in der Sitzung abzurufen.
Der Befehl verwendet einen Pipelineoperator (|
), um die Formatdaten aus dem Befehl Get-FormatData
an das Cmdlet Export-FormatData
zu senden, wodurch die Formatdaten in die AllFormat.ps1 Datei exportiert werden.
Der befehl Export-FormatData
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" -PowerShellVersion 5.1
Export-FormatData -InputObject $F -Path "c:\test\help.format.ps1xml" -IncludeScriptBlock
Mit diesen Befehlen werden die Formatdaten für die HelpInfoShort Typ in die Datei "Help.format.ps1xml" exportiert.
Der erste Befehl verwendet das Cmdlet Get-FormatData
, um die Formatdaten für den HelpInfoShort--Typ abzurufen und in der variablen $F
zu speichern.
Der zweite Befehl verwendet den parameter InputObject des Cmdlets Export-FormatData
, um die in der variablen $F
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" -PowerShellVersion 5.1 | 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
In diesem Beispiel wird der Effekt gezeigt, dass der IncludeScriptBlock- parameter aus einem Export-FormatData
-Befehl weggelassen wird.
Der erste Befehl verwendet das Cmdlet Get-FormatData
, um die Formatdaten für das System.Diagnostics.Process--Objekt abzurufen, das vom cmdlet Get-Process zurückgegeben wird. Der Befehl verwendet einen Pipelineoperator (|
), um die Formatierungsdaten an das cmdlet Export-FormatData
zu senden, wodurch sie in die Datei "Process.format.ps1xml" im aktuellen Verzeichnis exportiert wird.
In diesem Fall verwendet der befehl Export-FormatData
nicht den parameter IncludeScriptBlock.
Der zweite Befehl verwendet das Cmdlet Update-FormatData
, um der aktuellen Sitzung die Datei Process.format.ps1xml hinzuzufügen. Der Befehl verwendet den Parameter PrependPath, 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 Cmdlet Get-Process
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 eine Benutzerbestätigung zu verlangen.
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 nicht standardmäßig exportiert.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InputObject
Gibt die zu exportierenden Formatdatenobjekte an. 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
an Export-FormatData
pfeifen.
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 LiteralPath- genau so verwendet, wie er eingegeben wird. Es werden keine Zeichen als Wildcards interpretiert. Wenn der Pfad Escapezeichen enthält, schließen Sie ihn in einfache Anführungszeichen ein. 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 überschreibt Export-FormatData
Dateien ohne Warnung, es sei denn, die Datei verfügt über das schreibgeschützte Attribut.
Verwenden Sie Export-FormatData
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 einen Dateinamen mit der Dateinamenerweiterung format.ps1xml ein.
Wenn Sie den Pfad weglassen, erstellt Export-FormatData
die Datei im aktuellen Verzeichnis.
Wenn Sie eine andere Dateinamenerweiterung als PS1xml verwenden, erkennt das cmdlet Update-FormatData
die Datei nicht.
Wenn Sie eine vorhandene Datei angeben, überschreibt Export-FormatData
die Datei ohne Warnung, es sei denn, die Datei verfügt über das schreibgeschützte Attribut. Verwenden Sie zum Überschreiben einer schreibgeschützten Datei den Parameter Force. Um zu verhindern, dass Dateien überschrieben werden, verwenden Sie den NoClobber Parameter.
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
an Export-FormatData
weitergeleitet werden.
Ausgaben
None
Export-FormatData
gibt keine Objekte zurück.
Sie 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 skripts und Konfigurationsdateien ausführen lassen. Weitere Informationen finden Sie unter about_Execution_Policies.