Export (0) Print
Expand All
Expand Minimize

Format-List

Updated: May 8, 2014

Applies To: Windows PowerShell 4.0

Format-List

Formats the output as a list of properties in which each property appears on a new line.

Aliases

The following abbreviations are aliases for this cmdlet:

  • fl

Syntax

Parameter Set: Default
Format-List [[-Property] <Object[]> ] [-DisplayError] [-Expand <String> ] [-Force] [-GroupBy <Object> ] [-InputObject <PSObject> ] [-ShowError] [-View <String> ] [ <CommonParameters>]




Detailed Description

The Format-List cmdlet formats the output of a command as a list of properties in which each property is displayed on a separate line. You can use Format-List to format and display all or selected properties of an object as a list (format-list *).

Because more space is available for each item in a list than in a table, Windows PowerShell displays more properties of the object in the list, and the property values are less likely to be truncated.

Parameters

-DisplayError

Displays errors at the command line. This parameter is rarely used, but can be used as a debugging aid when you are formatting expressions in a Format-List command, and the expressions do not appear to be working. The following shows an example of the results of adding the DisplayError parameter with an expression.

PS > Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError
DayOfWeek  $_ / $null
--------- ------------
Wednesday #ERR


Aliases

none

Required?

false

Position?

named

Default Value

False

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Expand<String>

Formats the collection object, as well as the objects in the collection. This parameter is designed to format objects that support the ICollection (System.Collections) interface. The default value is EnumOnly.

Valid values are:

-- EnumOnly: Displays the properties of the objects in the collection.

-- CoreOnly: Displays the properties of the collection object.

-- Both: Displays the properties of the collection object and the properties of objects in the collection.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Force

Directs the cmdlet to display all of the error information. Use with the DisplayError or ShowError parameters. By default, when an error object is written to the error or display streams, only some of the error information is displayed.


Aliases

none

Required?

false

Position?

named

Default Value

False

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-GroupBy<Object>

Formats the output in groups based on a shared property or value. Enter an expression or a property of the output.

The value of the GroupBy parameter can be a new calculated property. To create a calculated property, use a hash table. Valid keys are:

-- Name (or Label) <string>

-- Expression <string> or <script block>

-- FormatString <string>


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InputObject<PSObject>

Specifies the objects to be formatted. Enter a variable that contains the objects or type a command or expression that gets the objects.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

true (ByValue)

Accept Wildcard Characters?

false

-Property<Object[]>

Specifies the object properties that appear in the display and the order in which they appear. Wildcards are permitted.

If you omit this parameter, the properties that appear in the display depend on the object being displayed. The parameter name ("Property") is optional. You cannot use the Property and View parameters in the same command.

The value of the Property parameter can be a new calculated property. To create a calculated property, use a hash table. Valid keys are:

-- Name (or Label) <string>

-- Expression <string> or <script block>

-- FormatString <string>


Aliases

none

Required?

false

Position?

1

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

true

-ShowError

Sends errors through the pipeline. This parameter is rarely used, but can be used as a debugging aid when you are formatting expressions in a Format-List command, and the expressions do not appear to be working. The following shows an example of the results of adding the ShowError parameter with an expression.

PS > Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError
DayOfWeek $_ / $null
--------- ------------
Wednesday

Failed to evaluate expression " $_ / $null ".
+ CategoryInfo : InvalidArgument: (10/30/2013 2:28:07 PM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : mshExpressionError


Aliases

none

Required?

false

Position?

named

Default Value

False

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-View<String>

Specifies the name of an alternate list format or "view." You cannot use the Property and View parameters in the same command.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see  about_CommonParameters (http://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • System.Management.Automation.PSObject

    You can pipe any object to Format-List.


Outputs

The output type is the type of the objects that the cmdlet emits.

  • Microsoft.PowerShell.Commands.Internal.Format

    Format-List returns the format objects that represent the list.


Notes

  • You can also refer to Format-List by its built-in alias, "FL". For more information, see about_Aliases.

    The format cmdlets, such as Format-List, arrange the data to be displayed but do not display it. The data is displayed by the output features of Windows PowerShell and by the cmdlets that contain the Out verb (the Out cmdlets), such as Out-Host, Out-File, and Out-Printer.

    If you do not use a format cmdlet, Windows PowerShell applies that default format for each object that it displays.

    The GroupBy parameter assumes that the objects are sorted. Before using Format-Custom to group the objects, use Sort-Object to sort them.

    The View parameter lets you specify an alternate format for the table. You can use the views defined in the *.format.PS1XML files in the Windows PowerShell directory, or you can create your own views in new PS1XML files and use the Update-FormatData cmdlet to include them in Windows PowerShell.

    The alternate view for the View parameter must use the list format; if not, the command fails. If the alternate view is a table, use Format-Table. If the alternate view is neither a list nor a table, use Format-Custom.

Examples

-------------------------- EXAMPLE 1 --------------------------

This command formats information about services on the computer as a list. By default, the services are formatted as a table. The Get-Service cmdlet gets objects representing the services on the computer. The pipeline operator (|) passes the results through the pipeline to Format-List. Then, the Format-List command formats the service information in a list and sends it to the default output cmdlet for display.


PS C:\> get-service | format-list

-------------------------- EXAMPLE 2 --------------------------

These commands display information about the PS1XML files in the Windows PowerShell directory as a list.

The first command gets the objects representing the files and stores them in the $a variable.

The second command uses Format-List to format information about objects stored in $a. This command uses the InputObject parameter to pass the variable to Format-List, which then sends the formatted output to the default output cmdlet for display.


PS C:\> $a = get-childitem $pshome\*.ps1xml
PS C:\>format-list -InputObject $a

-------------------------- EXAMPLE 3 --------------------------

This command displays the name, base priority, and priority class of each process on the computer. It uses the Get-Process cmdlet to get an object representing each process. The pipeline operator (|) passes the process objects through the pipeline to Format-List. Format-List formats the processes as a list of the specified properties. The "Property" parameter name is optional, so you can omit it.


PS C:\> get-process | format-list -property name, basepriority, priorityclass

-------------------------- EXAMPLE 4 --------------------------

This command displays all of the properties of the Winlogon process. It uses the Get-Process cmdlet to get an object representing the Winlogon process. The pipeline operator (|) passes the Winlogon process object through the pipeline to Format-List. The command uses the Property parameter to specify the properties and the * to indicate all properties. Because the name of the Property parameter is optional, you can omit it and type the command as: "format-list *". Format-List automatically sends the results to the default output cmdlet for display.


PS C:\> get-process winlogon | format-list -property *



Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft