Export-FormatData
Hiermee worden opmaakgegevens uit de huidige sessie opgeslagen in een opmaakbestand.
Syntaxis
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-Path <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-LiteralPath <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Description
De cmdlet Export-FormatData maakt Windows PowerShell-opmaakbestanden (format.ps1xml) op basis van de opmaakobjecten in de huidige sessie. De ExtendedTypeDefinition objecten die Get-FormatData retourneert en opslaat in een bestand in XML-indeling.
Windows PowerShell gebruikt de gegevens in opmaakbestanden (format.ps1xml) om de standaardweergave van Microsoft .NET Framework-objecten in de sessie te genereren. U kunt de opmaakbestanden weergeven en bewerken en de cmdlet Update-FormatData gebruiken om de opmaakgegevens toe te voegen aan een sessie.
Zie about_Format.ps1xml voor meer informatie over het opmaken van bestanden in Windows PowerShell.
Voorbeelden
Voorbeeld 1: Gegevens in sessieindeling exporteren
PS C:\> Get-FormatData -TypeName "*" | Export-FormatData -Path "allformat.ps1xml" -IncludeScriptBlock
Met deze opdracht worden alle indelingsgegevens in de sessie geëxporteerd naar het bestand AllFormat.ps1xml.
De opdracht gebruikt de Get-FormatData-cmdlet om de indelingsgegevens in de sessie op te halen. Een waarde van * (alle) voor de parameter TypeName stuurt de cmdlet om alle gegevens in de sessie op te halen.
De opdracht maakt gebruik van een pijplijnoperator (|) om de indelingsgegevens te verzenden van de opdracht Get-FormatData naar de cmdlet Export-FormatData, waarmee de indelingsgegevens naar het AllFormat.ps1-bestand worden geëxporteerd.
De opdracht Export-FormatData gebruikt de parameter IncludeScriptBlock om scriptblokken op te nemen in de indelingsgegevens in het bestand.
Voorbeeld 2: Gegevens exporteren voor een type
PS C:\> $F = Get-FormatData -TypeName "helpinfoshort"
PS C:\> Export-FormatData -InputObject $F -Path "c:\test\help.format.ps1xml" -IncludeScriptBlock
Met deze opdrachten worden de indelingsgegevens voor het type HelpInfoShort geëxporteerd naar het bestand Help.format.ps1xml.
De eerste opdracht maakt gebruik van de cmdlet Get-FormatData om de indelingsgegevens voor het type HelpInfoShort op te halen. De opdracht wordt opgeslagen in de $F variabele.
De tweede opdracht gebruikt de parameter InputObject van de cmdlet Export-FormatData om de indelingsgegevens in te voeren die zijn opgeslagen in de variabele $F. Ook wordt de parameter IncludeScriptBlock gebruikt om scriptblokken op te nemen in de uitvoer.
Voorbeeld 3: Gegevens exporteren zonder scriptblok
PS C:\> Get-FormatData -TypeName "System.Diagnostics.Process" | Export-FormatData -Path process.format.ps1xml
PS C:\> Update-FormatData -PrependPath ".\process.format.ps1xml"
PS C:\> 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 dit voorbeeld ziet u het effect van het weglaten van de IncludeScriptBlock parameter uit een opdracht Export-FormatData.
De eerste opdracht maakt gebruik van de Get-FormatData cmdlet om de indelingsgegevens op te halen voor het System.Diagnostics.Process object dat de Get-Process cmdlet retourneert. De opdracht maakt gebruik van een pijplijnoperator (|) om de opmaakgegevens te verzenden naar de cmdlet Export-FormatData, waarmee deze wordt geëxporteerd naar het bestand Process.format.ps1xml in de huidige map.
In dit geval gebruikt de opdracht Export-FormatData niet de parameter IncludeScriptBlock.
De tweede opdracht maakt gebruik van de cmdlet Update-FormatData om het bestand Process.format.ps1xml toe te voegen aan de huidige sessie. De opdracht gebruikt de parameter PrependPath om ervoor te zorgen dat de opmaakgegevens voor procesobjecten in het bestand Process.format.ps1xml worden gevonden voordat de standaardopmaakgegevens voor procesobjecten worden gevonden.
De derde opdracht toont de effecten van deze wijziging. De opdracht maakt gebruik van de cmdlet Get-Process om processen op te halen met namen die beginnen met P. In de uitvoer ziet u dat eigenschapswaarden die worden berekend met behulp van scriptblokken ontbreken in de weergave.
Parameters
-Force
Hiermee dwingt u de opdracht uit te voeren zonder dat u om bevestiging van de gebruiker wordt gevraagd.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-IncludeScriptBlock
Hiermee wordt aangegeven of scriptblokken in de indelingsgegevens worden geëxporteerd.
Omdat scriptblokken code bevatten en schadelijk kunnen worden gebruikt, worden ze niet standaard geëxporteerd.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-InputObject
Hiermee geeft u de indeling van gegevensobjecten die moeten worden geëxporteerd. Voer een variabele in die de objecten bevat of een opdracht waarmee de objecten worden opgehaald, zoals een opdracht Get-FormatData. U kunt de objecten ook uit Get-FormatData- doorsluisen naar Export-FormatData.
Type: | ExtendedTypeDefinition[] |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-LiteralPath
Hiermee geeft u een locatie voor het uitvoerbestand. In tegenstelling tot de parameter Path, wordt de waarde van LiteralPath- exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven Windows PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.
Type: | String |
Aliassen: | PSPath |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NoClobber
Inidicatest dat de cmdlet bestaande bestanden niet overschrijft. Standaard overschrijft Export-FormatData bestanden zonder waarschuwing, tenzij het bestand het kenmerk Alleen-lezen heeft.
Als u Export-FormatData- wilt om alleen-lezenbestanden te overschrijven, gebruikt u de parameter Force.
Type: | SwitchParameter |
Aliassen: | NoOverwrite |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Path
Hiermee geeft u een locatie voor het uitvoerbestand. Voer een pad (optioneel) en bestandsnaam in met de bestandsextensie format.ps1xml. Als u het pad weglaat, maakt Export-FormatData het bestand in de huidige map.
Als u een andere bestandsnaamextensie dan .ps1xml gebruikt, herkent de cmdlet Update-FormatData het bestand niet.
Als u een bestaand bestand opgeeft, overschrijft Export-FormatData het bestand zonder waarschuwing overschrijft, tenzij het bestand het kenmerk Alleen-lezen heeft. Als u een alleen-lezenbestand wilt overschrijven, gebruikt u de parameter Forceren. Als u wilt voorkomen dat bestanden worden overschreven, gebruikt u de parameter NoClobber.
Type: | String |
Aliassen: | FilePath |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt ExtendedTypeDefinition objecten uit Get-FormatData- doorsluisen naar Export-FormatData-.
Uitvoerwaarden
None
Export-FormatData retourneert geen objecten. Er wordt een bestand gegenereerd en opgeslagen in het opgegeven pad.
Notities
Als u een opmaakbestand, inclusief een geëxporteerd opmaakbestand, wilt gebruiken, moet het uitvoeringsbeleid voor de sessie toestaan dat scripts en configuratiebestanden worden uitgevoerd. Zie about_Execution_Policies voor meer informatie.