自定义格式设置文件
cmdlet、函数和脚本返回的对象显示格式是使用格式化文件(format.ps1xml
文件)定义的。 其中几个文件由 Windows PowerShell 提供,用于为 Windows PowerShell cmdlet 返回的对象定义默认显示格式。 但是,还可以创建自己的自定义格式文件来覆盖默认显示格式,或定义自己的命令返回的对象显示。
Windows PowerShell 使用这些格式文件中的数据来确定显示的内容以及如何设置数据的格式。 显示的数据可以包括对象的属性或脚本块的值。 如果要显示一些不能直接从对象属性获取的值,则使用脚本块。 例如,你可能想要添加对象的两个属性的值,并将求和显示为单独的数据片段。 编写自己的格式设置文件时,需要为要显示的对象定义 视图。 可以为每个对象定义单个视图,可以为多个对象定义单个视图,也可以为同一对象定义多个视图。 可以定义的视图数没有限制。
重要
格式设置文件不确定返回到管道的对象元素。 当对象返回到管道时,该对象的所有成员都可用。
设置视图格式
格式设置视图可以显示表格格式、列表格式、宽格式和自定义格式的对象。 在大多数情况下,每个格式设置定义都由一组描述视图的 XML 标记进行描述。 每个视图都包含视图的名称、使用视图的对象以及视图的元素,例如表视图的列和行信息。
以下视图可用。
表视图列出一个或多个列中对象或脚本块值的属性。 每列表示对象的属性或脚本块值。 可以定义一个表视图,该视图显示对象的所有属性、对象的属性子集或属性和脚本块值的组合。 表的每一行表示返回的对象。 有关此视图的详细信息,请参阅 表视图。
列表视图列出单个列中对象或脚本块值的属性。 列表的每一行显示可选标签或属性名称,后跟属性或脚本块的值。 有关此视图的详细信息,请参阅 列表视图。
宽视图列出一个或多个列中对象的单个属性或脚本块值。 此视图没有标签或标题。 有关此视图的详细信息,请参阅 宽视图。
自定义视图显示对象属性或脚本块值的可自定义视图,这些值不符合表视图、列表视图或宽视图的刚性结构。 可以定义独立的自定义视图,也可以定义其他视图使用的自定义视图,例如表视图或列表视图。 有关此视图的详细信息,请参阅 自定义视图。
查看 XML 元素
以下示例显示了用于定义包含两列的表视图的 XML 标记。
ViewDefinitions 元素是格式化文件中定义的所有视图的容器元素。
View 元素定义特定的表、列表、宽视图或自定义视图。 在每个视图中,Name 元素指定视图的名称、ViewSelectedBy 元素定义使用该视图的对象,以及不同的控件元素(如 TableControl
元素)定义视图的格式。
ViewDefinitions
<View>
<Name>Name of View</Name>
<ViewSelectedBy>
<TypeName>Object to display using this view</TypeName>
<TypeName>Object to display using this view</TypeName>
</ViewSelectedBy>
<TableControl>
<TableHeaders>
<TableColumnHeader>
<Width></Width>
</TableColumnHeader>
<TableColumnHeader>
<Width></Width>
</TableColumnHeader>
</TableHeaders>
<TableRowEntries>
<TableRowEntry>
<TableColumnItems>
<TableColumnItem>
<PropertyName>Header for column 1</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>Header for column 2</PropertyName>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
</TableControl)
</View>
</ViewDefinitions>