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-Host
。 Format-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 的输入。
类型: | PSObject |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Transcript
确定是否应将输出发送到 PowerShell 的听录服务。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |