当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 自定义格式文件

作者:精品下载站 日期:2024-12-14 02:51:53 浏览:16 分类:玩电脑

自定义格式文件


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>

参见

表格视图

列表视图

宽视野

自定义视图

编写 Windows PowerShell Cmdlet

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯