Update-FormatData

更新当前会话中的格式设置数据。

语法

Update-FormatData
      [[-AppendPath] <String[]>]
      [-PrependPath <String[]>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

Update-FormatData cmdlet 可将格式设置文件中的格式设置数据重新加载到当前会话中。 此 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 命令来更新导入的命令的格式设置数据。 不需要再次导入该模块。