Export-FormatData
在格式化檔案中儲存來自目前工作階段的格式化資料。
Syntax
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-Path <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Export-FormatData
-InputObject <ExtendedTypeDefinition[]>
-LiteralPath <String>
[-Force]
[-NoClobber]
[-IncludeScriptBlock]
[<CommonParameters>]
Description
Cmdlet Export-FormatData
會從目前會話中的格式化物件建立 powerShell 格式化檔案, (format.ps1xml) 。 它會採用 ExtendedTypeDefinition 物件,以 Get-FormatData
XML 格式傳回並儲存這些物件。
PowerShell 會使用格式化檔案中的數據, (format.ps1xml) ,在會話中產生 Microsoft .NET Framework 對象的默認顯示。 您可以檢視及編輯格式化檔案,然後使用 Update-FormatData Cmdlet 將格式化資料新增至工作階段。
如需在PowerShell中格式化檔案的詳細資訊,請參閱 about_Format.ps1xml。
範例
範例 1:匯出會話格式數據
Get-FormatData -TypeName "*" -PowerShellVersion 5.1 | Export-FormatData -Path "allformat.ps1xml" -IncludeScriptBlock
此命令會將工作階段中的所有格式資料匯出到 AllFormat.ps1xml 檔案。
命令會 Get-FormatData
使用 Cmdlet 來取得會話中的格式數據。 TypeName 參數的所有) 值 *
(會指示 Cmdlet 取得會話中的所有數據。
命令會使用管線運算符 (|
) ,將格式數據從 Get-FormatData
命令傳送至 Export-FormatData
Cmdlet,此 Cmdlet 會將格式數據匯出至 AllFormat.ps1 檔案。
Export-FormatData
此命令會使用 IncludeScriptBlock 參數,在檔案的格式數據中包含腳本區塊。
範例 2:匯出類型的格式數據
$F = Get-FormatData -TypeName "helpinfoshort" -PowerShellVersion 5.1
Export-FormatData -InputObject $F -Path "c:\test\help.format.ps1xml" -IncludeScriptBlock
這些命令會將 HelpInfoShort 類型的格式數據匯出至 Help.format.ps1xml 檔案。
第一個命令會 Get-FormatData
使用 Cmdlet 來取得 HelpInfoShort 類型的格式數據,並將它儲存在變數中 $F
。
第二個命令會使用 Cmdlet 的 Export-FormatData
InputObject 參數來輸入儲存在變數中的$F
格式數據。 它也使用 IncludeScriptBlock 參數在輸出中包含腳本區塊。
範例 3:匯出不含腳本區塊的格式數據
Get-FormatData -TypeName "System.Diagnostics.Process" -PowerShellVersion 5.1 | 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
此範例顯示從Export-FormatData
命令省略 IncludeScriptBlock 參數的效果。
第一個命令會 Get-FormatData
使用 Cmdlet 來取得 Get-Process Cmdlet 傳回 之 System.Diagnostics.Process 物件的格式數據。 命令會使用管線運算符 (|
) 將格式數據傳送至 Export-FormatData
Cmdlet,以將它匯出至目前目錄中的 Process.format.ps1xml 檔案。
在此情況下, Export-FormatData
此命令不會使用 IncludeScriptBlock 參數。
第二個命令會 Update-FormatData
使用 Cmdlet 將 Process.format.ps1xml 檔案新增至目前的會話。 命令會使用 PrependPath 參數,以確保在處理對象的標準格式數據之前,找到 Process.format.ps1xml 檔案中進程物件的格式化數據。
第三個命令會顯示此變更的效果。 命令會 Get-Process
使用 Cmdlet 來取得名稱開頭為 P 的進程。輸出顯示顯示中遺漏了使用腳本區塊計算的屬性值。
參數
-Force
強制執行命令而不要求使用者確認。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IncludeScriptBlock
指出是否匯出格式數據的腳本區塊。
因為指令碼區塊包含程式碼,可能被用於惡意用途,所以預設不會將它們匯出。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
指定要匯出的格式資料物件。 輸入變數,其中包含物件或取得 物件的命令,例如 Get-FormatData
命令。 您也可以使用管線會從 Get-FormatData
傳送至 Export-FormatData
。
Type: | ExtendedTypeDefinition[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
指定輸出檔案的位置。 與 Path 參數不同,LiteralPath 的值將完全依照其輸入值來使用。 沒有字元會被視為萬用字元。 如果路徑包含逸出字元,請將它括在單引號中。 單引號會指示PowerShell不要將任何字元解譯為逸出序列。
Type: | String |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoClobber
表示 Cmdlet 不會覆寫現有的檔案。 根據預設, Export-FormatData
除非檔案具有唯讀屬性,否則會覆寫沒有警告的檔案。
若要直接 Export-FormatData
覆寫唯讀檔案,請使用 Force 參數。
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定輸出檔案的位置。
輸入路徑 (選擇性) 與副檔名為 format.ps1xml 的檔案名稱。
如果您省略路徑, Export-FormatData
請在當前目錄中建立檔案。
如果您使用 .ps1xml 以外的擴展名, Update-FormatData
Cmdlet 將無法辨識檔案。
如果您指定現有的檔案, Export-FormatData
除非檔案具有只讀屬性,否則會覆寫檔案而不發出警告。 若要覆寫唯讀檔案,請使用 Force 參數。 若要防止覆寫檔案,請使用 NoClobber 參數。
Type: | String |
Aliases: | FilePath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
您可以使用管線將 ExtendedTypeDefinition 物件從 Get-FormatData
傳送至 Export-FormatData
。
輸出
None
Export-FormatData
不會傳回任何物件。
它會產生一個檔案,並將檔案儲存在指定路徑。
備註
- 若要使用任何格式化檔案 (包括匯出的格式化檔案),工作階段的執行原則必須允許執行指令碼和設定檔。 如需詳細資訊,請參閱 about_Execution_Policies。