Dela via


Get-FormatData

Hämtar formateringsdata i den aktuella sessionen.

Syntax

Get-FormatData
   [[-TypeName] <String[]>]
   [-PowerShellVersion <Version>]
   [<CommonParameters>]

Description

Cmdleten Get-FormatData hämtar formateringsdata i den aktuella sessionen.

Formateringsdata i sessionen innehåller formateringsdata från Format.ps1xml formateringsfiler, till exempel de i katalogen $PSHOME, formateringsdata för moduler som du importerar till sessionen och formatering av data för kommandon som du importerar till sessionen med hjälp av cmdleten Import-PSSession.

Du kan använda den här cmdleten för att undersöka formateringsdata. Sedan kan du använda cmdleten Export-FormatData för att serialisera objekten, konvertera dem till XML och spara dem i Format.ps1xml filer.

Mer information om hur du formaterar filer i PowerShell finns i about_Format.ps1xml.

Exempel

Exempel 1: Hämta alla formateringsdata

Det här exemplet hämtar alla formateringsdata i sessionen.

Get-FormatData -PowerShellVersion 5.1

Viktig

För att säkerställa att den fullständiga formateringsinformationen returneras bör du alltid inkludera parametern PowerShellVersion med värdet 5.1 när du använder ett lokalt anrop av Get-FormatData. Om parametern och värdet utelämnas kanske du inte får all rätt typinformation.

Exempel 2: Hämta formateringsdata efter typnamn

Det här exemplet hämtar formateringsdataobjekt vars namn börjar med System.Management.Automation.Cmd.

Get-FormatData -TypeName 'System.Management.Automation.Cmd*' -PowerShellVersion 5.1

Exempel 3: Granska ett formateringsdataobjekt

Det här exemplet visar hur du hämtar ett formateringsdataobjekt och undersöker dess egenskaper.

$F = Get-FormatData -TypeName 'System.Management.Automation.Cmd*' -PowerShellVersion 5.1
$F

TypeName        FormatViewDefinition
--------        --------------------
HelpInfoShort   {help , TableControl}

$F.FormatViewDefinition[0].control

Headers          : {System.Management.Automation.TableControlColumnHeader,
                   System.Management.Automation.TableControlColumnHeader,
                   System.Management.Automation.TableControlColumnHeader,
                   System.Management.Automation.TableControlColumnHeader}
Rows             : {System.Management.Automation.TableControlRow}
AutoSize         : False
HideTableHeaders : False
GroupBy          :
OutOfBand        : False

$F.FormatViewDefinition[0].control.Headers

Label       Alignment Width
-----       --------- -----
CommandType Undefined    15
Name        Undefined    50
Version     Undefined    10
Source      Undefined     0

Exempel 4: Hämta formateringsdata och exportera dem

Det här exemplet visar hur du använder Get-FormatData och Export-FormatData för att exportera formateringsdata som läggs till av en modul.

$A = Get-FormatData -PowerShellVersion 5.1
Import-Module bitstransfer
$B = Get-FormatData -PowerShellVersion 5.1
Compare-Object $A $B

InputObject                                                SideIndicator
-----------                                                -------------
Microsoft.BackgroundIntelligentTransfer.Management.BitsJob =>

Get-FormatData *bits* | Export-FormatData -FilePath c:\test\bits.format.ps1xml
Get-Content c:\test\bits.format.ps1xml

<?xml version="1.0" encoding="utf-8"?><Configuration><ViewDefinitions>
<View><Name>Microsoft.BackgroundIntelligentTransfer.Management.BitsJob</Name>
...

De första fyra kommandona använder cmdletarna Get-FormatData, Import-Moduleoch Compare-Object för att identifiera formattypen som modulen BitsTransfer lägger till i sessionen.

Det femte kommandot använder cmdleten Get-FormatData för att hämta formattypen som BitsTransfer-modulen lägger till. Den använder en pipelineoperator (|) för att skicka formattypsobjektet till Export-FormatData-cmdleten, som konverterar tillbaka det till XML och sparar det i den angivna format.ps1xml filen.

Det sista kommandot visar ett utdrag av format.ps1xml filinnehåll.

Exempel 5: Hämta formateringsdata baserat på den angivna versionen av PowerShell

Det här exemplet visar hur du använder Get-FormatData för att hämta formatdata för en angiven TypeName- och PowerShell-version.

Get-FormatData -TypeName 'Microsoft.PowerShell.Utility.FileHash' -PowerShellVersion $PSVersionTable.PSVersion

TypeNames                               FormatViewDefinition
---------                               --------------------
{Microsoft.PowerShell.Utility.FileHash} {Microsoft.PowerShell.Utility.FileHash}

Parametrar

-PowerShellVersion

Ange vilken version av PowerShell den här cmdleten hämtar för formateringsdata. Ange ett tvåsiffrigt tal avgränsat med en punkt.

Den här parametern lades till i PowerShell 5.1 för att förbättra kompatibiliteten vid fjärrkommunikation av datorer som kör äldre versioner av PowerShell.

Typ:Version
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-TypeName

Anger de typnamn som den här cmdleten hämtar för formateringsdata. Ange typnamnen. Jokertecken tillåts.

Typ:String[]
Position:0
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:True

Indata

None

Du kan inte skicka indata till den här cmdleten.

Utdata

ExtendedTypeDefinition