Export-FormatData

Hiermee worden opmaakgegevens uit de huidige sessie opgeslagen in een opmaakbestand.

Syntax

Export-FormatData
      -InputObject <ExtendedTypeDefinition[]>
      -Path <String>
      [-Force]
      [-NoClobber]
      [-IncludeScriptBlock]
      [<CommonParameters>]
Export-FormatData
      -InputObject <ExtendedTypeDefinition[]>
      -LiteralPath <String>
      [-Force]
      [-NoClobber]
      [-IncludeScriptBlock]
      [<CommonParameters>]

Description

De Export-FormatData cmdlet maakt PowerShell-opmaakbestanden (format.ps1xml) op basis van de opmaakobjecten in de huidige sessie. Hiervoor worden de ExtendedTypeDefinition-objecten gebruikt die Get-FormatData worden geretourneerd en opgeslagen in een bestand in XML-indeling.

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 PowerShell.

Voorbeelden

Voorbeeld 1: Gegevens in sessieindeling exporteren

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 leidt de cmdlet om alle gegevens in de sessie op te halen.

De opdracht maakt gebruik van een pijplijnoperator (|) om de indelingsgegevens van de Get-FormatData opdracht naar de Export-FormatData cmdlet te verzenden, waarmee de indelingsgegevens worden geëxporteerd naar het bestand AllFormat.ps1.

De Export-FormatData opdracht maakt gebruik van de parameter IncludeScriptBlock om scriptblokken op te nemen in de indelingsgegevens in het bestand.

Voorbeeld 2: Gegevens exporteren voor een type

$F = Get-FormatData -TypeName "helpinfoshort"
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 Get-FormatData cmdlet om de indelingsgegevens voor het type HelpInfoShort op te halen en slaat deze op in de $F variabele.

De tweede opdracht maakt gebruik van de parameter InputObject van de Export-FormatData cmdlet om de indelingsgegevens in te voeren die zijn opgeslagen in de $F variabele. Ook wordt de parameter IncludeScriptBlock gebruikt om scriptblokken op te nemen in de uitvoer.

Voorbeeld 3: Gegevens exporteren zonder scriptblok

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

In dit voorbeeld ziet u het effect van het weglaten van de parameter IncludeScriptBlock vanuit een Export-FormatData opdracht.

De eerste opdracht maakt gebruik van de Get-FormatData cmdlet om de indelingsgegevens op te halen voor het object System.Diagnostics.Process dat de Get-Process-cmdlet retourneert. De opdracht maakt gebruik van een pijplijnoperator (|) om de opmaakgegevens naar de Export-FormatData cmdlet te verzenden, waarmee deze wordt geëxporteerd naar het bestand Process.format.ps1xml in de huidige map.

In dit geval gebruikt de Export-FormatData opdracht niet de parameter IncludeScriptBlock .

De tweede opdracht gebruikt de Update-FormatData cmdlet 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 gebruikt de Get-Process cmdlet 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
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Required:False
Accept pipeline input:False
Accept wildcard characters: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 Get-FormatData opdracht. U kunt de objecten ook van Get-FormatData naar Export-FormatData.

Type:ExtendedTypeDefinition[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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 PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.

Type:String
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NoClobber

Geeft aan dat de cmdlet bestaande bestanden niet overschrijft. Bestanden worden standaard Export-FormatData overschreven zonder waarschuwing, tenzij het bestand het kenmerk Alleen-lezen heeft.

Als u wilt om Export-FormatData bestanden met het kenmerk Alleen-lezen te overschrijven, gebruikt u de parameter Force .

Type:SwitchParameter
Aliases:NoOverwrite
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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, Export-FormatData maakt u het bestand in de huidige map.

Als u een andere bestandsnaamextensie dan .ps1xml gebruikt, herkent de Update-FormatData cmdlet het bestand niet.

Als u een bestaand bestand opgeeft, Export-FormatData overschrijft u het bestand zonder waarschuwing, tenzij het bestand het kenmerk Alleen-lezen heeft. Als u een bestand met het kenmerk Alleen-lezen wilt overschrijven, gebruikt u de parameter Force . Gebruik de parameter NoClobber om te voorkomen dat bestanden worden overschreven.

Type:String
Aliases:FilePath
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

ExtendedTypeDefinition

U kunt ExtendedTypeDefinition-objecten van Get-FormatData naar deze cmdlet doorsluisen.

Uitvoerwaarden

None

Deze cmdlet retourneert geen uitvoer. 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. Raadpleeg about_Execution_Policies voor meer informatie.