解释输出格式PowerShell

在PowerShell中,输出为默认表格式。为了将输出格式化为所需的格式,主要使用以下管道命令。

格式表

格式列表

格式范围

也有用于格式化输出数据的命令,但并未广泛使用。

自定义格式

格式十六进制

在下面的示例中,我们将使用Get-Service获取服务的详细信息,并使用不同的输出cmdlet对其进行格式化。

Get-Service WinRM, Spooler

输出结果

Status     Name        DisplayName
------     ----        -----------
Running    Spooler     Print Spooler
Stopped    WinRM       Windows Remote Management (WS-Manag...

如您所见,由于以默认格式显示输出字符限制,因此未完全显示WinRM服务的显示名称。要获得完整的输出,您需要使用Format-Table(Alias-FT)及其– AutoSize参数。

示例

Get-Service WinRM, Spooler | Format-Table -AutoSize

输出结果

Status   Name      DisplayName
------   ----      -----------
Running  Spooler   Print Spooler
Stopped  WinRM     Windows Remote Management (WS-Management)

您还可以使用–在格式表中包装命令来包装命令的输出。

Status      Name        DisplayName
------      ----        -----------
Running     Spooler     Print Spooler
Stopped     WinRM       Windows Remote Management (WS-Management)

如果需要不带任何标题的输出,请在Format-Table命令中使用– HideTableHeaders参数。您可以组合两个参数,如下所示。

Get-Service WinRM,Spooler | Format-Table –HideTableHeaders -AutoSize

输出结果

Running Spooler Print Spooler
Stopped WinRM Windows Remote Management (WS-Management)

在上面的输出中,您没有使用那些管道命令获得服务的所有属性。要获得服务的所有属性,您需要使用(Format-List *)或(alias-fl *)命令。

示例

PS C:\WINDOWS\system32> Get-Service Spooler | fl *
Name                : Spooler
RequiredServices    : {RPCSS, http}
CanPauseAndContinue : False
CanShutdown         : False
CanStop             : True
DisplayName         : Print Spooler
DependentServices   : {Fax}
MachineName         : .
ServiceName         : Spooler
ServicesDependedOn  : {RPCSS, http}
ServiceHandle       : SafeServiceHandle
Status              : Running
ServiceType         : Win32OwnProcess, InteractiveProcess
StartType           : Automatic
Site                :
Container           :