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. Przyjmuje 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 do pobierania danych formatu w sesji. Wartość * (wszystkie) parametru TypeName kieruje polecenie cmdlet, aby pobrać wszystkie dane w sesji.

Polecenie używa operatora potoku (|) do wysyłania danych formatu z Get-FormatData polecenia cmdlet 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 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 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 do wprowadzania danych formatu zapisanych w zmiennej$F. Używa również parametru IncludeScriptBlock do uwzględnienia bloków skryptów 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 pomijania parametru IncludeScriptBlock z Export-FormatData polecenia.

Pierwsze polecenie używa Get-FormatData polecenia cmdlet do pobrania danych formatu obiektu System.Diagnostics.Process zwracanego przez polecenie cmdlet Get-Process. Polecenie używa operatora potoku (|) do wysyłania danych 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 do dodania pliku 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 efekty 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 danych formatu są eksportowane.

Ponieważ bloki skryptów zawierają kod i mogą być używane złośliwie, nie są 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 je ująć w pojedynczy cudzysłów. 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 bezpośrednio Export-FormatData zastąpić pliki 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 pominiesz ścieżkę, Export-FormatData utworzy 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 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 .

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

Dane wejściowe

ExtendedTypeDefinition

Do tego polecenia cmdlet można potokować obiekty Get-FormatDataExtendedTypeDefinition.

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.