Format-List
将输出的格式设置为属性列表,其中每个属性都显示在一个新行上。
语法
Format-List
[[-Property] <Object[]>]
[-GroupBy <Object>]
[-View <string>]
[-ShowError]
[-DisplayError]
[-Force]
[-Expand <string>]
[-InputObject <psobject>]
[<CommonParameters>]
说明
cmdlet Format-List
将命令的输出格式化为属性列表,其中每个属性都显示在单独的行上。 可以使用 Format-List
设置对象的所有或选定属性的格式,并将其显示为列表 (Format-List -Property *
) 。
由于列表中每个项的可用空间大于表中的可用空间,因此 PowerShell 在列表中显示对象的更多属性,并且属性值被截断的可能性较小。
示例
示例 1:设置计算机服务的格式
Get-Service | Format-List
此命令将计算机上服务的相关信息的格式设置为列表。 默认情况下,将这些服务的格式设置为表。 cmdlet Get-Service
获取表示计算机上的服务的对象。 管道运算符 (|
) 将结果通过管道 Format-List
传递到 。
然后,该 Format-List
命令设置列表中的服务信息的格式,并将其发送到默认输出 cmdlet 进行显示。
示例 2:设置 PS1XML 文件的格式
这些命令将 PowerShell 目录中有关 PS1XML 文件的信息显示为列表。
$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A
第一个命令获取表示文件的对象,并将其存储在 变量中 $A
。
第二个命令使用 Format-List
设置中存储 $A
的对象相关信息的格式。 此命令使用 InputObject 参数将变量 Format-List
传递给 ,后者随后会将格式化的输出发送到默认输出 cmdlet 以供显示。
示例 3:按名称设置进程属性的格式
此命令将显示计算机上每个进程的名称、基本优先级和优先级类。
Get-Process | Format-List -Property Name, BasePriority, PriorityClass
它使用 Get-Process
cmdlet 获取表示每个进程的 对象。 管道运算符 (|
) 将进程对象通过管道传递到 Format-List
。 Format-List
将进程格式化为指定属性的列表。 Property 参数名称是可选的,因此可以省略它。
示例 4:设置进程的所有属性的格式
此命令显示 Winlogon 进程的所有属性。
Get-Process winlogon | Format-List -Property *
它使用 Get-Process cmdlet 来获取表示 Winlogon 进程的对象。 管道运算符 (|
) 将 Winlogon 进程对象通过管道传递到 Format-List
。 该命令使用 Property 参数指定属性,并使用 *
指示所有属性。
由于 Property 参数的名称是可选的,因此可以省略它,并将命令键入为 Format-List *
。 Format-List
自动将结果发送到默认输出 cmdlet 以供显示。
示例 5:排查格式错误
以下示例演示使用表达式添加 DisplayError 或 ShowError 参数的结果。
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
参数
-DisplayError
指示此 cmdlet 在命令行上显示错误。 此参数很少使用,但可以在命令中 Format-List
设置表达式的格式时用作调试辅助,并且表达式似乎不起作用。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Expand
指定带格式的集合对象以及集合中的对象。 此参数旨在设置支持 System.Collections.ICollection 接口的对象的格式。 默认值为 EnumOnly
。 此参数的可接受值为:
EnumOnly
. 显示集合中的对象的属性。CoreOnly
. 显示集合对象的属性。Both
. 显示集合对象的属性以及集合中的对象的属性。
Type: | String |
Accepted values: | CoreOnly, EnumOnly, Both |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
指示此 cmdlet 显示所有错误信息。 与 DisplayError 或 ShowError 参数一起使用。 默认情况下,当将错误对象写入到错误或显示流时,仅显示部分错误信息。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-GroupBy
根据共享属性或值以组为单位指定输出。 请输入表达式或输出的属性。
GroupBy 参数的值可以是新的计算属性。 计算属性可以是脚本块或哈希表。 有效的键值对包括:
Name
(或Label
) -<string>
Expression
-<string>
或<script block>
FormatString
-<string>
有关详细信息,请参阅 about_Calculated_Properties。
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
指定要设置格式的对象。 输入一个包含对象的变量,或键入可获取对象的命令或表达式。
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Property
指定要在屏幕上显示的对象属性及其显示顺序。 允许使用通配符。
如果省略此参数,则屏幕上显示的属性取决于要显示的对象。 参数名称 Property 是可选的。 不能在同一命令中使用 Property 和 View 参数。
Property 参数的值可以是新的计算属性。 计算属性可以是脚本块或哈希表。 有效的键值对包括:
Name
(或Label
) -<string>
Expression
-<string>
或<script block>
FormatString
-<string>
有关详细信息,请参阅 about_Calculated_Properties。
Type: | Object[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-ShowError
指示 cmdlet 通过管道发送错误。 此参数很少使用,但可以在命令中 Format-List
设置表达式的格式时用作调试辅助,并且表达式似乎不起作用。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-View
指定备用列表格式或视图的名称。 不能在同一命令中使用 Property 和 View 参数。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输入
可以通过管道将任何对象传递给 Format-List
。
输出
Microsoft.PowerShell.Commands.Internal.Format
Format-List
返回表示列表的格式对象。
备注
还可以通过其内置别名 fl
来引用 Format-List
。 有关详细信息,请参阅 about_Aliases。
格式 cmdlet(如 Format-List
)排列要显示的数据,但不显示它。
数据由 PowerShell 的输出功能以及包含 Out
谓词的 Out
cmdlet (cmdlet) 显示,例如 Out-Host
或 Out-File
。
如果不使用格式 cmdlet,PowerShell 将为其显示的每个对象应用该默认格式。
GroupBy 参数假定对象已排序。 使用 Sort-Object
之前使用 Format-List
对对象进行分组。
使用 View 参数可以指定表的备用格式。 可以使用 PowerShell 目录中的 *.format.PS1XML
文件中定义的视图,也可以在新的 PS1XML 文件中创建自己的视图,并使用 Update-FormatData cmdlet 将它们包含在 PowerShell 中。
View 参数的备用视图必须使用列表格式,否则命令将失败。 如果备用视图是表,请使用 Format-Table
。 如果备用视图不是列表或表,请使用 Format-Custom
。