Out-Default

将输出发送到默认的格式化程序和默认的输出 cmdlet。

语法

Out-Default
   [-Transcript]
   [-InputObject <PSObject>]
   [<CommonParameters>]

说明

PowerShell 会自动将 Out-Default 添加到每个管道的末尾。 Out-Default 决定了如何格式化和输出对象流。 如果对象流是字符串流,则 Out-Default 会通过管道将这些字符串直接传递给 Out-Host,后者调用主机提供的相应 API。 如果对象流不包含字符串,则 Out-Default 会检查对象来确定应该如何操作。 首先,它查看对象类型,并确定此对象类型是否有已注册的视图

PowerShell 定义了一个 XML 架构和机制 (Update-FormatData cmdlet),任何人都可以在其中为对象类型注册视图。 可以为任何对象类型指定 wide、list、table 或 custom 视图。 视图指定要显示的属性及其显示方式。 如果已注册了某个视图,则它定义了要使用的格式化程序。 因此,如果已注册的视图是 table 视图,则 Out-Default 会将对象流式传输到 Format-Table | Out-HostFormat-Table 将对象转换为格式设置记录流(由视图定义中的数据驱动),Out-Host 将格式设置记录转换为主机接口上的调用。

此 cmdlet 不打算供最终用户使用。 建议使用其他 cmdlet 来控制输出,例如 Out-Host,或使用 Format-* cmdlet 和 Format.ps1xml 文件来控制格式设置。

示例

示例 1

虽然此 cmdlet 不打算供最终用户直接运行,但最终用户可以直接运行它。

Get-Process | Select-Object -First 5 | Out-Default

NPM(K)    PM(M)      WS(M)     CPU(s)      Id  SI ProcessName
 ------    -----      -----     ------      --  -- -----------
     12     2.56       5.20       0.00    7376   0 aesm_service
     48    34.32      18.10      26.64    9320  13 AlertusDesktopAlert
     24    13.97      12.74       0.77   12656  13 ApplicationFrameHost
      8     1.79       4.41       0.00    8180   0 AppVShNotify
      9     1.99       5.07       0.19   19320  13 AppVShNotify

使用 Out-Default 时不会引发错误,但如果未显式调用输出,则输出不会更改。

参数

-InputObject

接受 cmdlet 的输入。

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

-Transcript

确定是否应将输出发送到 PowerShell 的听录服务。

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