Format-List
Formata a saída como uma lista de propriedades nas quais cada propriedade aparece em uma nova linha.
Sintaxe
Format-List
[[-Property] <Object[]>]
[-GroupBy <Object>]
[-View <string>]
[-ShowError]
[-DisplayError]
[-Force]
[-Expand <string>]
[-InputObject <psobject>]
[<CommonParameters>]
Description
O cmdlet Format-List
formata a saída de um comando como uma lista de propriedades nas quais cada propriedade é exibida em uma linha separada. Você pode usar Format-List
para formatar e exibir todas ou selecionadas propriedades de um objeto como uma lista (Format-List -Property *
).
Como há mais espaço disponível para cada item em uma lista do que em uma tabela, o PowerShell exibe mais propriedades do objeto na lista e os valores de propriedade têm menos probabilidade de serem truncados.
Exemplos
Exemplo 1: Formatar serviços informáticos
Get-Service | Format-List
Este comando formata informações sobre serviços no computador como uma lista. Por padrão, os serviços são formatados como uma tabela. O cmdlet Get-Service
obtém objetos que representam os serviços no computador. O operador do pipeline (|
) passa os resultados através do pipeline para Format-List
.
Em seguida, o comando Format-List
formata as informações de serviço em uma lista e as envia para o cmdlet de saída padrão para exibição.
Exemplo 2: Formatar ficheiros PS1XML
Esses comandos exibem informações sobre os arquivos PS1XML no diretório do PowerShell como uma lista.
$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A
O primeiro comando obtém os objetos que representam os arquivos e os armazena na variável $A
.
O segundo comando usa Format-List
para formatar informações sobre objetos armazenados no $A
. Este comando usa o parâmetro InputObject para passar a variável para Format-List
, que, em seguida, envia a saída formatada para o cmdlet de saída padrão para exibição.
Exemplo 3: Formatar propriedades do processo por nome
Este comando exibe o nome, a prioridade base e a classe de prioridade de cada processo no computador.
Get-Process | Format-List -Property Name, BasePriority, PriorityClass
Ele usa o cmdlet Get-Process
para obter um objeto que representa cada processo. O operador de pipeline (|
) passa os objetos de processo através do pipeline para Format-List
.
Format-List
formata os processos como uma lista das propriedades especificadas. A propriedade nome do parâmetro é opcional, portanto, você pode omiti-la.
Exemplo 4: Formatar todas as propriedades de um processo
Este comando exibe todas as propriedades do processo Winlogon.
Get-Process winlogon | Format-List -Property *
Ele usa o cmdlet Get-Process para obter um objeto que representa o processo Winlogon. O operador do pipeline (|
) transmite o objeto do processo Winlogon através do pipeline para Format-List
. O comando usa o parâmetro Property para especificar as propriedades e o *
para indicar todas as propriedades.
Como o nome do parâmetro Property é opcional, você pode omiti-lo e digitar o comando como Format-List *
.
Format-List
envia automaticamente os resultados para o cmdlet de saída padrão para exibição.
Exemplo 5: Solução de problemas de erros de formato
Os exemplos a seguir mostram os resultados da adição dos parâmetros DisplayError ou ShowError com uma expressão.
PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -DisplayError
DayOfWeek : Friday
$_ / $null : #ERR
PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError
DayOfWeek : Friday
$_ / $null :
Failed to evaluate expression " $_ / $null ".
+ CategoryInfo : InvalidArgument: (12/21/2018 7:59:23 AM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : PSPropertyExpressionError
Parâmetros
-DisplayError
Indica que esse cmdlet exibe erros na linha de comando. Esse parâmetro raramente é usado, mas pode ser usado como um auxílio de depuração quando você está formatando expressões em um comando Format-List
e as expressões não parecem estar funcionando.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Expand
Especifica o objeto de coleção formatado, bem como os objetos na coleção. Este parâmetro foi projetado para formatar objetos que suportam o System.Collections.ICollection interface. O valor padrão é EnumOnly
. Os valores aceitáveis para este parâmetro são:
-
EnumOnly
. Exibe as propriedades dos objetos na coleção. -
CoreOnly
. Exibe as propriedades do objeto de coleção. -
Both
. Exibe as propriedades do objeto de coleção e as propriedades dos objetos na coleção.
Tipo: | String |
Valores aceites: | CoreOnly, EnumOnly, Both |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-Force
Indica que esse cmdlet exibe todas as informações de erro. Use com o parâmetro DisplayError ou ShowError. Por padrão, quando um objeto de erro é gravado nos fluxos de erro ou exibição, apenas algumas informações de erro são exibidas.
Também necessário ao formatar determinados tipos .NET. Para obter mais informações, consulte a seção Notas.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-GroupBy
Especifica a saída em grupos com base em uma propriedade ou valor compartilhado. Insira uma expressão ou uma propriedade da saída. O parâmetro GroupBy espera que os objetos sejam classificados. Use o cmdlet Sort-Object
antes de usáFormat-List
para agrupar os objetos.
O valor do parâmetro GroupBy pode ser uma nova propriedade calculada. A propriedade calculada pode ser um bloco de script ou uma tabela de hash. Os pares chave-valor válidos são:
-
Name
(ouLabel
) -<string>
-
Expression
-<string>
ou<script block>
FormatString
-<string>
Para obter mais informações, consulte about_Calculated_Properties.
Tipo: | Object |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-InputObject
Especifica os objetos a serem formatados. Insira uma variável que contenha os objetos ou digite um comando ou expressão que obtenha os objetos.
Tipo: | PSObject |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-Property
Especifica as propriedades do objeto que aparecem na exibição e a ordem em que aparecem. Curingas são permitidos.
Se você omitir esse parâmetro, as propriedades que aparecem na exibição dependem do objeto que está sendo exibido. O nome do parâmetro Property é opcional. Não é possível usar a Propriedade e os Parâmetros View no mesmo comando.
O valor do parâmetro Property pode ser uma nova propriedade calculada. A propriedade calculada pode ser um bloco de script ou uma tabela de hash. Os pares chave-valor válidos são:
-
Name
(ouLabel
) -<string>
-
Expression
-<string>
ou<script block>
FormatString
-<string>
Para obter mais informações, consulte about_Calculated_Properties.
Tipo: | Object[] |
Position: | 0 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | True |
-ShowError
Indica que o cmdlet envia erros pelo pipeline. Esse parâmetro raramente é usado, mas pode ser usado como um auxílio de depuração quando você está formatando expressões em um comando Format-List
e as expressões não parecem estar funcionando.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
-View
Especifica o nome de um formato ou modo de exibição de lista alternativo. Não pode usar os parâmetros de Propriedade e de Vista no mesmo comando.
Tipo: | String |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
Você pode canalizar qualquer objeto para este cmdlet.
Saídas
Microsoft.PowerShell.Commands.Internal.Format
Este cmdlet retorna os objetos de formato que representam a lista.
Notas
O PowerShell inclui os seguintes aliases para Format-List
:
- Todas as plataformas:
fl
Os cmdlets de formato, como Format-List
, organizam os dados a serem exibidos, mas não os exibem.
Os dados são apresentados pelas funcionalidades de saída do PowerShell e pelos cmdlets que contêm o verbo Out
(os cmdlets Out
), como Out-Host
ou Out-File
.
Se você não usar um cmdlet de formato, o PowerShell aplicará esse formato padrão para cada objeto exibido.
O parâmetro View permite especificar um formato alternativo para a tabela. Você pode usar as exibições definidas nos arquivos *.format.PS1XML
no diretório do PowerShell ou pode criar suas próprias exibições em novos arquivos PS1XML e usar o cmdlet Update-FormatData
para incluí-las no PowerShell.
O modo de exibição alternativo para o parâmetro View deve usar o formato de lista, caso contrário, o comando falhará. Se o modo de exibição alternativo for uma tabela, use Format-Table
. Se o modo de exibição alternativo não for uma lista ou tabela, use Format-Custom
.
Se você quiser usar Format-List
com o parâmetro Property, precisará incluir o parâmetro Force em qualquer uma das seguintes condições:
Os objetos de entrada são formatados fora de banda usando o método
ToString()
. Isso se aplica aos tipos primitivos[string]
e .NET que são um superconjunto dos tipos numéricos internos, como[int]
,[long]
e outros.Os objetos de entrada não têm propriedades públicas.
Os objetos de entrada são instâncias dos tipos de wrapper que o PowerShell usa para fluxos de saída diferentes do fluxo de saída Success. Isso se aplica somente quando esses tipos de wrapper são enviados para o fluxo de saída Success, o que requer capturá-los primeiro por meio de parâmetros comuns, tais como ErrorVariable, ou usar um redirecionamento, como
*>&1
.Os tipos de invólucro incluem:
- System.Management.Automation.ErrorRecord
- System.Management.Automation.WarningRecord
- System.Management.Automation.VerboseRecord
- System.Management.Automation.DebugRecord
- System.Management.Automation.InformationRecord