Formatting File Overview (Ficheiros de Formatação: Descrição Geral)
O formato de exibição dos objetos que são devolvidos por comandos (cmdlets, funções e scripts) é definido através da utilização de ficheiros formatting (ficheiros formatando.ps1xml). Vários destes ficheiros são fornecidos pela PowerShell para definir o formato de exibição para os objetos devolvidos pelos comandos fornecidos pelo PowerShell, tais como o objeto System.Diagnostics.Process devolvido pelo Get-Process
cmdlet. No entanto, também pode criar os seus próprios ficheiros de formatação personalizados para substituir os formatos de exibição predefinidos ou pode escrever um ficheiro formatotação personalizado para definir o ecrã de objetos devolvidos pelos seus próprios comandos.
Importante
Os ficheiros de formatação não determinam os elementos de um objeto que são devolvidos ao pipeline. Quando um objeto é devolvido ao oleoduto, todos os membros desse objeto estão disponíveis mesmo que alguns não sejam apresentados.
O PowerShell utiliza os dados nestes ficheiros de formatação para determinar o que é apresentado e como os dados apresentados são formatados. Os dados apresentados podem incluir as propriedades de um objeto ou o valor de um script. Os scripts são utilizados se pretender exibir algum valor que não esteja disponível diretamente a partir das propriedades de um objeto, como adicionar o valor de duas propriedades de um objeto e, em seguida, exibir a soma como um pedaço de dados. A formatação dos dados apresentados é feita definindo vistas para os objetos que pretende exibir. Pode definir uma única vista para cada objeto, pode definir uma única vista para vários objetos, ou pode definir várias vistas para o mesmo objeto. Não há limite para o número de pontos de vista que pode definir.
Características comuns dos ficheiros formatting
Cada ficheiro de formatação pode definir os seguintes componentes que podem ser partilhados em todas as vistas definidas pelo ficheiro:
Definição de configuração predefinida, como se os dados apresentados nas linhas das tabelas serão apresentados na linha seguinte se os dados forem mais longos do que a largura da coluna. Para obter mais informações sobre estas definições, consulte Wrap Element for TableRowEntry.
Conjuntos de objetos que podem ser exibidos por qualquer uma das vistas do ficheiro de formatação. Para obter mais informações sobre estes conjuntos (designados por conjuntos de seleção), consulte conjuntos de conjuntos de objetos definidos.
Controlos comuns que podem ser utilizados por todas as opiniões do ficheiro de formatação. Os controlos dão-lhe um controlo mais fino sobre a forma como os dados são apresentados. Para obter mais informações sobre controlos, consulte Definição de Controlos Personalizados.
Vistas de formatação
As vistas de formatação podem exibir objetos num formato de tabela, formato de lista, formato amplo e formato personalizado. Na maior parte das vezes, cada definição de formatação é descrita por um conjunto de tags XML que descrevem a vista. Cada vista contém o nome da vista, os objetos que usam a vista, e os elementos da vista, tais como a coluna e a informação de linha para uma vista de mesa.
Vista de Tabela
Lista as propriedades de um objeto ou um valor de bloco de script em uma ou mais colunas. Cada coluna representa uma única propriedade do objeto ou um valor de script. Pode definir uma vista de mesa que exibe todas as propriedades de um objeto, um subconjunto das propriedades de um objeto, ou uma combinação de propriedades e valores de script. Cada fileira da mesa representa um objeto devolvido.
Criar uma vista de mesa é muito semelhante ao de quando se canaliza um objeto para o Format-Table
cmdlet. Para mais informações sobre esta vista, consulte a Vista de Quadros.
Vista de Lista
Lista as propriedades de um objeto ou valor de script numa única coluna. Cada linha da lista apresenta uma etiqueta opcional ou o nome da propriedade seguido do valor da propriedade ou do script. A criação de uma vista de lista é muito semelhante à tubagem de um objeto para o Format-List
cmdlet. Para mais informações sobre esta vista, consulte a Lista de Visualização.
Vista ampla
Lista uma única propriedade de um objeto ou um valor de script em uma ou mais colunas. Não há rótulo ou cabeçalho para esta vista. Criar uma vista ampla é muito semelhante à tubagem de um objeto para o Format-Wide
cmdlet. Para mais informações sobre esta vista, consulte a Wide View.
Vista personalizada
Exibe uma visão personalizável das propriedades dos objetos ou valores de script que não aderem à estrutura rígida das vistas de mesa, vistas de listas ou vistas amplas. Pode definir uma vista personalizada autónoma, ou pode definir uma vista personalizada que é usada por outra vista, como uma vista de mesa ou uma vista de lista.
Criar uma vista personalizada é muito semelhante à tubagem de um objeto para o Format-Custom
cmdlet. Para mais informações sobre esta vista, consulte a Vista Personalizada.
Componentes de uma vista
Os seguintes exemplos de XML mostram os componentes XML básicos de uma vista. Os elementos XML individuais variam dependendo da vista que pretende criar, mas os componentes básicos das vistas são todos iguais.
Para começar, cada vista tem um Name
elemento que especifica um nome amigável do utilizador que é usado para referenciar a vista. um ViewSelectedBy
elemento que define quais os objetos .NET são apresentados pela vista e um elemento de controlo que define a vista.
<ViewDefinitions>
<View>
<Name>NameOfView</Name>
<ViewSelectedBy>...</ViewSelectedBy>
<TableControl>...</TableControl>
</View>
<View>
<Name>NameOfView</Name>
<ViewSelectedBy>...</ViewSelectedBy>
<ListControl>...</ListControl>
<View>
<View>
<Name>NameOfView</Name>
<ViewSelectedBy>...</ViewSelectedBy>
<WideControl>...</WideControl>
<View>
<View>
<Name>NameOfView</Name>
<ViewSelectedBy>...</ViewSelectedBy>
<CustomControl>...</CustomControl>
</View>
</ViewDefinitions>
Dentro do elemento de controlo, pode definir um ou mais elementos de entrada. Se utilizar várias definições, deve especificar quais os objetos .NET que utilizam cada definição. Normalmente, apenas uma entrada, com apenas uma definição, é necessária para cada controlo.
<ListControl>
<ListEntries>
<ListEntry>
<EntrySelectedBy>...</EntrySelectedBy>
<ListItems>...</ListItems>
<ListEntry>
<ListEntry>
<EntrySelectedBy>...</EntrySelectedBy>
<ListItems>...</ListItems>
<ListEntry>
<ListEntry>
<EntrySelectedBy>...</EntrySelectedBy>
<ListItems>...</ListItems>
<ListEntry>
</ListEntries>
</ListControl>
Dentro de cada elemento de entrada de uma vista, especifique os elementos de item que definem as propriedades ou scripts .NET que são apresentados por essa vista.
<ListItems>
<ListItem>...</ListItem>
<ListItem>...</ListItem>
<ListItem>...</ListItem>
</ListItems>
Como mostrado nos exemplos anteriores, o ficheiro de formatação pode conter múltiplas visões, uma visão pode conter várias definições, e cada definição pode conter vários itens.
Exemplo de uma vista de mesa
O exemplo a seguir mostra as etiquetas XML utilizadas para definir uma vista de mesa que contém duas colunas. O elemento ViewDefinitions é o elemento de recipiente para todas as vistas definidas no ficheiro formatação. O elemento 'Ver' define a tabela específica, lista, vista ampla ou personalizada. Dentro de cada elemento de visualização, o elemento Nome especifica o nome da vista, o elemento ViewSelectedBy define os objetos que utilizam a vista e os diferentes elementos de controlo (como o TableControl
elemento mostrado no exemplo seguinte) definem o tipo de vista.
<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>
Consulte também
Creating a List View (Criar uma Vista de Lista)
Creating a Table View (Criar uma Vista de Tabela)
Creating a Wide View (Criar uma Vista Ampla)
Comentários
Submeter e ver comentários