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 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 |
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 Get-FormatData
opdracht. U kunt de objecten ook van Get-FormatData
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 PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.
Type: | String |
Aliassen: | PSPath, LP |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
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, 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 |
Aliassen: | FilePath |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
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.