Udostępnij za pośrednictwem


Export-FormatData

Zapisuje dane formatowania z bieżącej sesji w pliku formatowania.

Składnia

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

Opis

Polecenie Export-FormatData cmdlet tworzy pliki formatowania programu PowerShell (format.ps1xml) z obiektów formatowania w bieżącej sesji. Pobiera on obiekty ExtendedTypeDefinition , które Get-FormatData zwracają je i zapisują je w pliku w formacie XML.

Program PowerShell używa danych w plikach formatowania (format.ps1xml) do generowania domyślnego wyświetlania obiektów microsoft .NET Framework w sesji. Możesz wyświetlać i edytować pliki formatowania oraz użyć polecenia cmdlet Update-FormatData, aby dodać dane formatowania do sesji.

Aby uzyskać więcej informacji na temat formatowania plików w programie PowerShell, zobacz about_Format.ps1xml.

Przykłady

Przykład 1. Eksportowanie danych formatu sesji

Get-FormatData -TypeName "*" | Export-FormatData -Path "allformat.ps1xml" -IncludeScriptBlock

To polecenie eksportuje wszystkie dane formatu w sesji do pliku AllFormat.ps1xml.

Polecenie używa Get-FormatData polecenia cmdlet , aby pobrać dane formatu w sesji. Wartość * (wszystkie) dla parametru TypeName kieruje polecenie cmdlet, aby pobrać wszystkie dane w sesji.

Polecenie używa operatora potoku (|), aby wysłać dane formatu z Get-FormatData polecenia do Export-FormatData polecenia cmdlet, które eksportuje dane formatu do pliku AllFormat.ps1.

Polecenie Export-FormatData używa parametru IncludeScriptBlock , aby uwzględnić bloki skryptów w formacie danych w pliku.

Przykład 2: Eksportowanie danych formatu dla typu

$F = Get-FormatData -TypeName "helpinfoshort"
Export-FormatData -InputObject $F -Path "c:\test\help.format.ps1xml" -IncludeScriptBlock

Te polecenia eksportują dane formatu dla typu HelpInfoShort do pliku Help.format.ps1xml.

Pierwsze polecenie używa Get-FormatData polecenia cmdlet do pobrania danych formatu dla typu HelpInfoShort i zapisuje je w zmiennej $F .

Drugie polecenie używa parametru Export-FormatDataInputObject polecenia cmdlet, aby wprowadzić dane formatu zapisane w zmiennej$F. Używa również parametru IncludeScriptBlock do uwzględnienia bloków skryptu w danych wyjściowych.

Przykład 3. Eksportowanie danych formatu bez bloku skryptu

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

W tym przykładzie pokazano efekt pominięcia parametru IncludeScriptBlock z Export-FormatData polecenia .

Pierwsze polecenie używa Get-FormatData polecenia cmdlet , aby pobrać dane formatu obiektu System.Diagnostics.Process zwracane przez polecenie cmdlet Get-Process. Polecenie używa operatora potoku (|), aby wysłać dane formatowania do Export-FormatData polecenia cmdlet, które eksportuje je do pliku Process.format.ps1xml w bieżącym katalogu.

W takim przypadku Export-FormatData polecenie nie używa parametru IncludeScriptBlock .

Drugie polecenie używa Update-FormatData polecenia cmdlet , aby dodać plik Process.format.ps1xml do bieżącej sesji. Polecenie używa parametru PrependPath , aby upewnić się, że dane formatowania dla obiektów przetwarzania w pliku Process.format.ps1xml znajdują się przed standardowym formatowaniem danych dla obiektów przetwarzania.

Trzecie polecenie pokazuje skutki tej zmiany. Polecenie używa polecenia cmdlet do pobierania Get-Process procesów, które mają nazwy rozpoczynające się od P. Dane wyjściowe pokazują, że w ekranie brakuje wartości właściwości obliczanych przy użyciu bloków skryptu.

Parametry

-Force

Wymusza uruchomienie polecenia bez monitowania o potwierdzenie użytkownika.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeScriptBlock

Wskazuje, czy bloki skryptu w formacie danych są eksportowane.

Ponieważ bloki skryptów zawierają kod i mogą być używane złośliwie, nie są one domyślnie eksportowane.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Określa format obiektów danych do wyeksportowania. Wprowadź zmienną zawierającą obiekty lub polecenie, które pobiera obiekty, takie jak Get-FormatData polecenie. Można również potokować obiekty z Get-FormatData do .Export-FormatData

Type:ExtendedTypeDefinition[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-LiteralPath

Określa lokalizację pliku wyjściowego. W przeciwieństwie do parametru Path wartość LiterałuPath jest używana dokładnie tak, jak jest typowana. Znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w znaki pojedynczego cudzysłowu. Znaki pojedynczego cudzysłowu informują program PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.

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

-NoClobber

Wskazuje, że polecenie cmdlet nie zastępuje istniejących plików. Domyślnie zastępuje pliki bez ostrzeżenia, Export-FormatData chyba że plik ma atrybut tylko do odczytu.

Aby kierować Export-FormatData do zastępowania plików tylko do odczytu, użyj parametru Force .

Type:SwitchParameter
Aliases:NoOverwrite
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Określa lokalizację pliku wyjściowego. Wprowadź ścieżkę (opcjonalnie) i nazwę pliku z rozszerzeniem nazwy pliku format.ps1xml. Jeśli pominięto ścieżkę, Export-FormatData zostanie utworzony plik w bieżącym katalogu.

Jeśli używasz rozszerzenia nazwy pliku innego niż ps1xml, Update-FormatData polecenie cmdlet nie rozpozna pliku.

Jeśli określisz istniejący plik, Export-FormatData zastąpi go bez ostrzeżenia, chyba że plik ma atrybut tylko do odczytu. Aby zastąpić plik tylko do odczytu, użyj parametru Force . Aby zapobiec zastępowaniu plików, użyj parametru NoClobber .

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

Dane wejściowe

ExtendedTypeDefinition

Można potokować obiekty ExtendedTypeDefinition z Get-FormatData do Export-FormatData.

Dane wyjściowe

None

Export-FormatData nie zwraca żadnych obiektów. Generuje plik i zapisuje go w określonej ścieżce.

Uwagi

  • Aby użyć dowolnego pliku formatowania, w tym wyeksportowanego pliku formatowania, zasady wykonywania sesji muszą zezwalać na uruchamianie skryptów i plików konfiguracji. Aby uzyskać więcej informacji, zobacz about_Execution_Policies.