Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Export-FormatData

Zapisuje formatowanie danych 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 cmdlet Export-FormatData tworzy pliki formatowania programu PowerShell (format.ps1xml) z obiektów formatowania w bieżącej sesji. Pobiera ExtendedTypeDefinition obiektów, które Get-FormatData zwraca i zapisuje je w pliku w formacie XML.

Program PowerShell używa danych w plikach formatowania (format.ps1xml) do generowania domyślnego wyświetlania obiektów programu Microsoft .NET Framework w sesji. Możesz wyświetlić 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 polecenia cmdlet Get-FormatData w celu pobrania danych formatu w sesji. Wartość * (wszystkie) parametru TypeName kieruje polecenie cmdlet w celu pobrania wszystkich danych w sesji.

Polecenie używa operatora potoku (|) do wysyłania danych formatu z polecenia Get-FormatData do polecenia cmdlet Export-FormatData, które eksportuje dane formatu do pliku AllFormat.ps1xml.

Polecenie Export-FormatData używa parametru IncludeScriptBlock w celu uwzględnienia bloków skryptu w danych formatu 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 HelpInfoShort do pliku Help.format.ps1xml.

Pierwsze polecenie używa polecenia cmdlet Get-FormatData, aby pobrać dane formatu HelpInfoShort typu i zapisuje je w zmiennej $F.

Drugie polecenie używa parametru InputObject polecenia cmdlet Export-FormatData, aby wprowadzić dane formatu zapisane w zmiennej $F. Używa również parametru IncludeScriptBlock w celu 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 polecenia Export-FormatData.

Pierwsze polecenie używa polecenia cmdlet Get-FormatData w celu pobrania danych formatu dla obiektu System.Diagnostics.Process zwracanego przez polecenie cmdlet Get-Process. Polecenie używa operatora potoku (|) do wysyłania danych formatowania do polecenia cmdlet Export-FormatData, które eksportuje je do pliku Process.format.ps1xml w bieżącym katalogu.

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

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

Trzecie polecenie pokazuje skutki tej zmiany. Polecenie używa polecenia cmdlet Get-Process do pobierania 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 skryptów.

Parametry

-Force

Wymusza uruchomienie polecenia bez monitowania o potwierdzenie użytkownika.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych: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.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych: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 polecenia. Można również potokować obiekty z Get-FormatData do Export-FormatData.

Typ:ExtendedTypeDefinition[]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-LiteralPath

Określa lokalizację pliku wyjściowego. W przeciwieństwie do parametru Path wartość LiteralPath 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 pojedynczy cudzysłów. Pojedyncze znaki cudzysłowu informują program PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.

Typ:String
Aliasy:PSPath, LP
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-NoClobber

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

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

Typ:SwitchParameter
Aliasy:NoOverwrite
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych: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 utworzy plik w bieżącym katalogu.

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

Jeśli określisz istniejący plik, Export-FormatData zastąpi plik 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.

Typ:String
Aliasy:FilePath
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

ExtendedTypeDefinition

Możesz przekazać potok ExtendedTypeDefinition obiektów z Get-FormatData do tego polecenia cmdlet.

Dane wyjściowe

None

To polecenie cmdlet nie zwraca żadnych danych wyjściowych. 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.