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 Export-FormatData
cmdlet tworzy pliki formatowania programu PowerShell (format.ps1xml) z obiektów formatowania w bieżącej sesji. Pobiera obiekty ExtendedTypeDefinition , które Get-FormatData
zwracają je i zapisuje 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 Get-FormatData
polecenia cmdlet , aby pobrać dane formatu w sesji. Wartość (wszystkie) parametru *
TypeName kieruje polecenie cmdlet w celu pobrania wszystkich danych 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 do uwzględnienia bloków 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-FormatData
InputObject polecenia cmdlet, aby wprowadzić dane formatu zapisane 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 pominięcia 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 tym 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 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 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 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
polecenie. 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ść 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 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 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 .
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 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 .
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
Możesz potokować obiekty ExtendedTypeDefinition z Get-FormatData
polecenia cmdlet 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.