Update-FormatData
語法
Update-FormatData [[-AppendPath] <string[]>] [-PrependPath <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
描述
Update-FormatData Cmdlet 會將格式化檔案的格式化資料重新載入目前的工作階段中。這個 Cmdlet 可讓您更新格式化資料,而不需要重新啟動 Windows PowerShell。
如果沒有參數,Update-FormatData 就會重新載入它先前所載入的格式化檔案。您可以使用 Update-FormatData 的參數,將新的格式化檔案加入至工作階段。
格式化檔案是指採用 XML 格式且副檔名為 format.ps1xml 的文字檔。這些檔案中的格式化資料會定義 Microsoft .NET Framework 物件在工作階段中的顯示方式。
當 Windows PowerShell 啟動時,它會從 Windows PowerShell 安裝目錄 ($pshome) 的格式化檔案,將格式化資料載入工作階段中。您可以使用 Update-FormatData,將格式化資料重新載入目前的工作階段中,而不需要重新啟動 Windows PowerShell。當您已經加入或變更格式化檔案,但是不想要中斷工作階段時,這就很有用。
如需 Windows PowerShell 中格式化檔案的詳細資訊,請參閱 about_Format.ps1xml。
參數
-AppendPath <string[]>
將指定的格式化檔案加入至工作階段。這些檔案會在 Windows PowerShell 載入內建的格式化檔案之後載入。
格式化 .NET 物件時,Windows PowerShell 會針對每個 .NET 型別使用它找到的第一個格式化定義。如果您使用 AppendPath 參數,Windows PowerShell 會在遇到您所加入的格式化資料之前,從內建的檔案中搜尋資料。
您可以使用這個參數來加入格式化為 .NET 物件而且內建格式化檔案沒有參考此物件的檔案。
必要? |
false |
位置? |
1 |
預設值 |
|
接受管線輸入? |
true (ByValue, ByPropertyName) |
接受萬用字元? |
false |
-PrependPath <string[]>
將指定的格式化檔案加入至工作階段。這些檔案會在 Windows PowerShell 載入內建的格式化檔案之前載入。
格式化 .NET 物件時,Windows PowerShell 會針對每個 .NET 型別使用它找到的第一個格式化定義。如果您使用 PrependPath 參數,Windows PowerShell 會在遇到內建檔案的格式化資料之前,從您所加入的檔案中搜尋資料。
您可以使用這個參數來加入格式化為 .NET 物件而且內建格式化檔案也有參考此物件的檔案。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Confirm
在執行命令前先提示確認。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-WhatIf
說明執行命令時將會發生何種情況,但不會實際執行命令。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
System.String 您可經由管道將包含附加路徑的字串輸出至 Update-FormatData。 |
輸出 |
無 這個 Cmdlet 不會傳回任何輸出。 |
附註
Update-FormatData 也會在工作階段中更新從模組匯入之命令的格式化資料。如果模組的格式化檔案已變更,您就可以執行 Update-FormatData 命令來更新匯入命令的格式化資料。不過,您不需要再次匯入模組。
範例 1
C:\PS>update-formatdata
描述
-----------
這個命令會重新載入它先前所載入的格式化檔案。
範例 2
C:\PS>update-formatdata -appendpath trace.format.ps1xml, log.format.ps1xml
描述
-----------
這個命令會將格式化檔案重新載入工作階段中,包括 Trace.format.ps1xml 和 Log.format.ps1xml 這兩個新檔案。
因為此命令會使用 AppendPath 參數,所以新檔案中的格式化資料會在系統載入內建檔案的格式化資料之後載入。
使用 AppendPath 參數的原因是新檔案包含內建檔案沒有參考之物件的格式化資料。
範例 3
C:\PS>update-formatdata -prependPath c:\test\NewFiles.format.ps1xml
# Edit the NewFiles.format.ps1 file.
C:\PS> update-formatdata
描述
-----------
這個範例會示範如何在您已經編輯格式化檔案之後,重新載入格式化檔案。
第一個命令會將 NewFiles.format.ps1xml 檔案加入至工作階段。它會使用 PrependPath 參數的原因是該檔案包含內建檔案已參考之物件的格式化資料。
加入 NewFiles.format.ps1xml 檔案並在這些工作階段中進行測試之後,作者會編輯該檔案。
第二個命令會使用 Update-FormatData Cmdlet 來重新載入格式化檔案。因為先前已經載入 NewFiles.format.ps1xml 檔案,所以 Update-FormatData 會自動重新載入該檔案,而不需要使用參數。