PowerShell Format-List
最后修改:2025 年 2 月 15 日
在本文中,我们将介绍 PowerShell 中的 Format-List
cmdlet。此 cmdlet 将命令输出格式化为属性列表。
Format-List 基础
Format-List
cmdlet 将输出显示为属性列表。每个属性都显示在新行上,并附带其值。这对于查看对象的全部属性非常有用。默认的表格视图通常会截断信息。
Format-List 基本用法
使用 Format-List
最简单的方法是将任何 cmdlet 的输出通过管道传递给它。这将以垂直列表格式显示所有属性。星号 (*) 通配符显示所有可用的属性。
Get-Process | Format-List *
此命令检索所有进程并显示其全部属性。每个属性都显示在自己的行上,以便更好地阅读。
显示特定属性
您可以使用 Format-List
选择要显示的特定属性。这可以帮助您专注于相关信息并减少混乱。在 cmdlet 之后列出属性名称,用逗号分隔。
Get-Process -Name "notepad" | Format-List Name, Id, CPU, StartTime
此命令仅显示记事本进程的名称、ID、CPU 使用率和启动时间。与显示所有属性相比,输出更加简洁。
PS C:\> .\formatlist2.ps1 Name : notepad Id : 1234 CPU : 1.2345678 StartTime : 2/15/2025 10:30:45 AM
格式化服务信息
Format-List
也适用于与服务相关的 cmdlet。它有助于显示 Windows 服务的全部配置详细信息。这对于排查服务问题非常有用。
Get-Service -Name "WinRM" | Format-List *
此命令显示 Windows Remote Management 服务的全部属性。输出包括状态、启动类型和依赖项。
自定义属性显示
您可以使用计算属性创建自定义属性显示。这允许您在输出中格式化或组合值。使用带有 Name 和 Expression 键的哈希表。
Get-Process | Format-List Name, @{Name="Memory(MB)";Expression={$_.WS/1MB}}
此命令显示进程名称以及转换为 MB 的工作集内存。计算属性执行转换以提高可读性。
格式化注册表项信息
Format-List
非常适合显示注册表项详细信息。注册表项通常有很多属性,这些属性在表格中显示不方便。这提供了注册表项的全面视图。
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion" | Format-List *
此命令显示 Windows CurrentVersion 注册表项的全部属性。列表格式清楚地显示了每个值。
与 Format-Table 比较
虽然 Format-Table
适合概述,但 Format-List
提供详细信息。此示例显示了两个格式化 cmdlet 对同一数据的区别。
# Table format (default) Get-Process -Name "powershell" # List format Get-Process -Name "powershell" | Format-List *
第一个命令以表格格式显示基本的进程信息。第二个命令以易于阅读的列表格式显示所有可用属性。
使用 -Property 限制输出
-Property
参数提供了选择属性的替代语法。这可以使脚本在选择许多属性时更具可读性。它的功能与直接列出属性相同。
Get-Service | Format-List -Property DisplayName, Status, StartType
此命令显示服务的显示名称、状态和启动类型。-Property
参数清楚地指出了显示了哪些字段。
来源
在本文中,我们介绍了 PowerShell 中的 Format-List cmdlet。
作者
列出 所有 PowerShell 教程。