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

[玩转系统] Format-List (Microsoft.PowerShell.Utility)

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

Format-List (Microsoft.PowerShell.Utility)


Format-List

模块 :Microsoft.PowerShell.Utility

将输出格式化为属性列表,其中每个属性都显示在新行上。

句法

Format-List
      [[-Property] <Object[]>]
      [-GroupBy <Object>]
      [-View <string>]
      [-ShowError]
      [-DisplayError]
      [-Force]
      [-Expand <string>]
      [-InputObject <psobject>]
      [<CommonParameters>]

描述

Format-List cmdlet 将命令的输出格式化为属性列表,其中每个属性都显示在单独的行上。您可以使用 Format-List 将对象的所有或选定属性格式化并显示为列表 (Format-List -Property *)。

由于列表中的每个项目比表中的可用空间更多,因此 PowerShell 在列表中显示对象的更多属性,并且属性值不太可能被截断。

示例

示例 1:格式化计算机服务

Get-Service | Format-List

此命令将有关计算机上的服务的信息格式化为列表。默认情况下,服务的格式为表格。 Get-Service cmdlet 获取表示计算机上服务的对象。管道运算符 (|) 通过管道将结果传递到 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-ListFormat-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:格式错误故障排除

以下示例显示了使用表达式添加 DisplayErrorShowError 参数的结果。

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 命令中格式化表达式并且表达式似乎不起作用时,可以将其用作调试辅助工具。

类型 :

SwitchParameter

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

-Expand

指定格式化的集合对象以及集合中的对象。此参数旨在格式化支持 System.Collections.ICollection 接口的对象。默认值为EnumOnly。该参数可接受的值为:

  • 仅枚举。显示集合中对象的属性。
  • 仅核心。显示集合对象的属性。
  • 两者。显示集合对象的属性以及集合中对象的属性。
类型 :

String

接受的值:

仅核心、仅枚举、两者

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

-Force

指示此 cmdlet 显示所有错误信息。与 DisplayErrorShowError 参数一起使用。默认情况下,当错误对象写入错误或显示流时,仅显示一些错误信息。

格式化某些 .NET 类型时也需要。有关详细信息,请参阅注释部分。

类型 :

SwitchParameter

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

-GroupBy

根据共享属性或值分组指定输出。输入输出的表达式或属性。

GroupBy 参数的值可以是新的计算属性。计算的属性可以是脚本块或哈希表。有效的键值对是:

  • 名称(或标签)- <string>
  • 表达式 - <字符串><脚本块>
  • 格式字符串 - <字符串>

有关详细信息,请参阅 about_Calculated_Properties。

类型 :

目的

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

-InputObject

指定要格式化的对象。输入包含对象的变量或键入获取对象的命令或表达式。

类型 :

PS对象

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

True

接受通配符:

False

-Property

指定显示中出现的对象属性及其出现的顺序。允许使用通配符。

如果省略此参数,则显示中显示的属性取决于所显示的对象。参数名称Property是可选的。您不能在同一命令中使用属性视图参数。

Property 参数的值可以是新的计算属性。计算的属性可以是脚本块或哈希表。有效的键值对是:

  • 名称(或标签)- <string>
  • 表达式 - <字符串><脚本块>
  • 格式字符串 - <字符串>

有关详细信息,请参阅 about_Calculated_Properties。

类型 :

Object[]

位置:

0

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

True

-ShowError

指示 cmdlet 通过管道发送错误。此参数很少使用,但当您在 Format-List 命令中格式化表达式并且表达式似乎不起作用时,可以将其用作调试辅助工具。

类型 :

SwitchParameter

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

-View

指定备用列表格式或视图的名称。您不能在同一命令中使用属性视图参数。

类型 :

String

位置:

命名

默认值:

None

必需的:

False

接受管道输入:

False

接受通配符:

False

输入

PSObject

您可以通过管道将任何对象传递给此 cmdlet。

输出

Microsoft.PowerShell.Commands.Internal.Format

此 cmdlet 返回表示列表的格式对象。

笔记

PowerShell 包含以下 Format-List 别名:

  • 所有平台:

      fl

    格式 cmdlet(例如 Format-List)可以安排要显示的数据,但不显示它。数据由 PowerShell 的输出功能和包含 Out 动词(Out cmdlet)的 cmdlet(例如 Out-Host 或输出文件

    如果不使用格式 cmdlet,PowerShell 会为其显示的每个对象应用默认格式。

    GroupBy 参数假定对象已排序。在使用Format-List 对对象进行分组之前,先使用Sort-Object

    View 参数允许您指定表格的替代格式。您可以使用 PowerShell 目录中的 *.format.PS1XML 文件中定义的视图,也可以在新的 PS1XML 文件中创建自己的视图并使用 Update-FormatData cmdlet 将它们包含在 PowerShell 中。

    View 参数的备用视图必须使用列表格式,否则命令将失败。如果备用视图是表格,请使用Format-Table。如果备用视图不是列表或表格,请使用Format-Custom

    如果要将 Format-ListProperty 参数一起使用,则需要在以下任一条件下包含 Force 参数:

    • 输入对象使用 ToString() 方法进行带外格式化。这适用于 [string] 和 .NET 基元类型,它们是内置数字类型的超集,例如 [int][long] 等。

    • 输入对象没有公共属性。

    • 输入对象是 PowerShell 用于除 Success 输出流之外的输出流的包装器类型的实例。仅当这些包装器类型发送到 Success 输出流时才适用,这需要首先通过 ErrorVariable 等通用参数捕获它们,或者使用 *>&1等重定向>。

      • 包装器类型包括:

        • 系统.管理.自动化.错误记录
    • 系统.管理.自动化.警告记录
    • 系统.管理.自动化.详细记录
    • 系统.管理.自动化.调试记录
    • 系统.管理.自动化.信息记录

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

    取消回复欢迎 发表评论:

    关灯