Format-Custom

使用自定义的视图来设置输出格式。

语法

Format-Custom
      [[-Property] <Object[]>]
      [-Depth <Int32>]
      [-GroupBy <Object>]
      [-View <String>]
      [-ShowError]
      [-DisplayError]
      [-Force]
      [-Expand <String>]
      [-InputObject <PSObject>]
      [<CommonParameters>]

说明

Format-Custom cmdlet 设置命令的输出格式,如替代视图中的定义。 Format-Custom旨在显示不只是表格或只是列表的视图。 可以使用 PowerShell 中定义的视图,也可以在新的format.ps1xml 文件中创建自己的视图,并使用Update-FormatData cmdlet 将其添加到 PowerShell 中。

示例

示例 1:使用自定义视图设置输出格式

Get-Command Start-Transcript | Format-Custom -View MyView

此命令按照由 MyView 视图所定义的格式设置有关Start-Transcript cmdlet 的信息的格式,该视图是由用户创建的自定义视图。 若要成功运行此命令,必须首先创建一个新的 PS1XML 文件、定义MyView视图,然后使用Update-FormatData命令将 PS1XML 文件添加到 PowerShell 中。

示例 2:使用默认视图设置输出格式

Get-Process Winlogon | Format-Custom

此命令设置有关替代的自定义视图中Winlogon进程的信息的格式。 因为此命令不使用View参数,因此Format-Custom使用默认的自定义视图对数据进行格式化。

示例 3:排查格式错误

下面的示例显示了使用表达式添加DisplayErrorShowError参数所产生的结果。

PC /> Get-Date | Format-Custom DayOfWeek,{ $_ / $null } -DisplayError

class DateTime
{
  DayOfWeek = Friday
   $_ / $null  = #ERR
}


PC /> Get-Date | Format-Custom DayOfWeek,{ $_ / $null } -ShowError

class DateTime
{
  DayOfWeek = Friday
   $_ / $null  =
}

Failed to evaluate expression " $_ / $null ".
+ CategoryInfo          : InvalidArgument: (12/21/2018 8:01:04 AM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : PSPropertyExpressionError

参数

-Depth

指定显示中的列数。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayError

在命令行中显示错误。 此参数很少使用,但当你在 Format-Custom 命令中设置表达式的格式,并且这些表达式似乎无法正常工作时,此参数可用于帮助调试。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Expand

设置集合对象以及集合中的对象的格式。 此参数旨在用于设置支持System.Collections.ICollection接口的对象的格式。 默认值为 EnumOnly

有效值为:

  • EnumOnly:显示集合中的对象的属性。
  • CoreOnly:显示集合对象的属性。
  • 两者:显示集合对象的属性以及集合中的对象的属性。
Type:String
Accepted values:CoreOnly, EnumOnly, Both
Position:Named
Default value:EnumOnly
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

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

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 参数的值可以是新的计算属性。 计算属性可以是脚本块或哈希表。 有效的键值对包括:

  • Expression - <string><script block>
  • Depth - <int32>

有关详细信息,请参阅 about_Calculated_Properties

Type:Object[]
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-ShowError

通过管道发送错误。 此参数很少使用,但当你在 Format-Custom 命令中设置表达式的格式,并且这些表达式似乎无法正常工作时,此参数可用于帮助调试。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-View

指定替代格式或视图的名称。 如果省略此参数,Format-Custom会使用默认的自定义视图。 不能在同一命令中使用PropertyView参数。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

PSObject

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

输出

Microsoft.PowerShell.Commands.Internal.Format

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

备注

PowerShell 包含以下 Format-Custom 别名:

  • 所有平台:
    • fc

Format-Custom旨在显示不只是表格或只是列表的视图。 要显示替代表视图,请使用Format-Table。 要显示替代列表视图,请使用Format-List

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