Update-FormatData
更新目前工作階段中的格式化資料。
Syntax
Update-FormatData
[[-AppendPath] <String[]>]
[-PrependPath <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cmdlet 會將 Update-FormatData
格式化數據從格式化檔案重載到目前的會話。 此 Cmdlet 可讓您在不重新啟動 PowerShell 的情況下更新格式化數據。
如果沒有參數, Update-FormatData
會重載先前載入的格式化檔案。
您可以使用 的參數 Update-FormatData
,將新的格式化檔案新增至會話。
格式化檔案是擴展名為 XML 格式的 format.ps1xml
文字檔。 檔案中的格式化資料會定義工作階段中 Microsoft .NET Framework 物件的顯示方式。
當 PowerShell 啟動時,它會從 PowerShell 原始程式碼載入格式數據。 不過,您可以建立自定義 format.ps1xml 檔案,以更新目前會話中的格式設定。 您可以使用 Update-FormatData
將格式化數據重載至目前的會話,而不需重新啟動 PowerShell。 當您已新增或變更格式化檔案,但不想中斷工作階段時,這非常有用。
如需在PowerShell中格式化檔案的詳細資訊,請參閱 about_Format.ps1xml。
範例
範例 1︰重新載入先前載入的格式化檔案
Update-FormatData
這個命令會重新載入它先前載入的格式化檔案。
範例 2︰重新載入格式化檔案以及追蹤和記錄格式化檔案
Update-FormatData -AppendPath "trace.format.ps1xml, log.format.ps1xml"
這個命令會將格式化檔案重新載入工作階段,包括 Trace.format.ps1xml 和 Log.format.ps1xml 這兩個新檔案。
由於此命令使用 AppendPath 參數,因此,新檔案中的格式化資料會在來自內建檔案的格式化資料之後載入。
因為新檔案包含內建檔案中未參考物件的格式化資料,所以會使用 AppendPath 參數。
範例 3︰編輯格式化檔案,並重新載入
Update-FormatData -PrependPath "c:\test\NewFiles.format.ps1xml"
# Edit the NewFiles.format.ps1 file.
Update-FormatData
這個範例示範如何在編輯格式化檔案之後重新載入它。
第一個命令將 NewFiles.format.ps1xml 檔案新增至工作階段。 它會使用 PrependPath 參數,因為檔案包含內建檔案中所參考物件的格式化資料。
新增 NewFiles.format.ps1xml 檔案並在這些工作階段中測試該檔案之後,作者編輯了該檔案。
第二個命令會 Update-FormatData
使用 Cmdlet 來重載格式化檔案。 因為先前已載入 NewFiles.format.ps1xml 檔案, Update-FormatData
所以不會使用參數自動重載它。
參數
-AppendPath
指定此 Cmdlet 要新增至工作階段的格式化檔案。 檔案會在PowerShell載入內建格式檔案之後載入。
格式化 .NET 物件時,PowerShell 會使用針對每個 .NET 類型尋找的第一個格式定義。 如果您使用 AppendPath 參數,PowerShell 會在遇到您要新增的格式化數據之前,先從內建檔案搜尋數據。
使用這個參數來新增格式化 .NET 物件的檔案,而內建的格式化檔案未參考該物件。
Type: | String[] |
Aliases: | PSPath, Path |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
在執行 Cmdlet 前提示您確認。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PrependPath
指定此 Cmdlet 要新增至工作階段的格式化檔案。 檔案會在PowerShell載入內建格式化檔案之前載入。
格式化 .NET 物件時,PowerShell 會使用針對每個 .NET 類型尋找的第一個格式定義。 如果您使用 PrependPath 參數,PowerShell 會在遇到內建檔案中的格式化數據之前,先從您新增的檔案中搜尋數據。
使用這個參數來新增格式化 .NET 物件的檔案,而內建的格式化檔案亦參考該物件。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
您可以使用管線將包含附加路徑的字串傳送至 Update-FormatData
。
輸出
None
此 Cmdlet 不會傳回任何輸出。
備註
Update-FormatData
也會更新從模組匯入之會話中命令的格式設定數據。 如果模組的格式化檔案變更,您可以執行Update-FormatData
命令來更新匯入命令的格式數據。 您不需要再次匯入模組。