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

輸入

String

您可以使用管線將包含附加路徑的字串傳送至此 Cmdlet。

輸出

None

此 Cmdlet 不會傳回任何輸出。

備註

  • Update-FormatData 也會更新從模組匯入之會話中命令的格式數據。 如果模組的格式化檔案變更,您可以執行 Update-FormatData 命令來更新匯入命令的格式數據。 您不需要再次匯入模組。