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

指定显示中的列数。

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisplayError

在命令行中显示错误。 此参数很少使用,但当你在 Format-Custom 命令中设置表达式的格式时,可用作调试辅助,并且表达式似乎不起作用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Expand

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

有效值为:

  • EnumOnly:显示集合中的对象的属性。
  • CoreOnly:显示集合对象的属性。
  • 两者:显示集合对象的属性和集合中的对象。
类型:String
接受的值:CoreOnly, EnumOnly, Both
Position:Named
默认值:EnumOnly
必需:False
接受管道输入:False
接受通配符:False

-Force

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

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-GroupBy

根据共享属性或值在组中设置输出的格式。 输入输出的表达式或属性。 GroupBy 参数需要对对象进行排序。 使用 Sort-Object cmdlet 之后,再使用 Format-Custom 对对象进行分组。

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

  • 名称(或标签) - <string>
  • 表达式 - <string><script block>
  • FormatString - <string>

有关详细信息,请参阅 about_Calculated_Properties

类型:Object
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputObject

指定要设置格式的对象。 输入一个包含对象的变量,或键入一个获取对象的命令或表达式。

类型:PSObject
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Property

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

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

属性的 参数值可以是一个新计算得出的属性。 计算属性可以是脚本块或哈希表。 有效的键值对包括:

  • 表达式 - <string><script block>
  • Depth - <int32>

有关详细信息,请参阅 about_Calculated_Properties

类型:Object[]
Position:0
默认值:None
必需:False
接受管道输入:False
接受通配符:True

-ShowError

通过管道发送错误。 此参数很少使用,但当你在 Format-Custom 命令中设置表达式的格式时,可用作调试辅助,并且表达式似乎不起作用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-View

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

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

PSObject

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

输出

Microsoft.PowerShell.Commands.Internal.Format

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

备注

PowerShell 包含以下与 Format-Custom相关的别名:

  • 所有平台:
    • fc

Format-Custom 旨在显示不仅限于表格或列表的视图。 若要显示备用表视图,请使用 Format-Table。 若要显示备用列表视图,请使用 Format-List

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