Поделиться через


Format-List

Форматирует выходные данные в виде списка свойств, в которых каждое свойство отображается в новой строке.

Синтаксис

Format-List
      [[-Property] <Object[]>]
      [-GroupBy <Object>]
      [-View <string>]
      [-ShowError]
      [-DisplayError]
      [-Force]
      [-Expand <string>]
      [-InputObject <psobject>]
      [<CommonParameters>]

Описание

Командлет Format-List форматирует выходные данные команды в виде списка свойств, в которых каждое свойство отображается в отдельной строке. Вы можете использовать Format-List для форматирования и отображения всех или выбранных свойств объекта в виде списка (Format-List -Property *).

Так как для каждого элемента в списке доступно больше места, чем в таблице, PowerShell отображает больше свойств объекта в списке, а значения свойств, скорее всего, будут усечены.

Примеры

Пример 1. Форматирование служб компьютеров

Get-Service | Format-List

Эта команда форматирует сведения о службах на компьютере в виде списка. По умолчанию службы форматируются как таблица. Командлет Get-Service получает объекты, представляющие службы на компьютере. Оператор конвейера (|) передает результаты через конвейер в Format-List. Затем команда Format-List форматирует сведения о службе в списке и отправляет его в командлет выходных данных по умолчанию для отображения.

Пример 2. Форматирование ФАЙЛОВ PS1XML

Эти команды отображают сведения о файлах PS1XML в каталоге PowerShell в виде списка.

$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A

Первая команда получает объекты, представляющие файлы, и сохраняет их в переменной $A.

Вторая команда использует Format-List для форматирования сведений об объектах, хранящихся в $A. Эта команда использует параметр InputObject для передачи переменной Format-List, которая затем отправляет отформатированные выходные данные в командлет выходных данных по умолчанию для отображения.

Пример 3. Форматирование свойств процесса по имени

Эта команда отображает имя, базовый приоритет и класс приоритета каждого процесса на компьютере.

Get-Process | Format-List -Property Name, BasePriority, PriorityClass

Он использует командлет Get-Process для получения объекта, представляющего каждый процесс. Оператор конвейера (|) передает объекты процесса через конвейер в Format-List. Format-List форматирует процессы в виде списка указанных свойств. Имя параметра свойство является необязательным, поэтому его можно опустить.

Пример 4. Форматирование всех свойств для процесса

Эта команда отображает все свойства процесса Winlogon.

Get-Process winlogon | Format-List -Property *

Он использует командлет Get-Process для получения объекта, представляющего процесс Winlogon. Оператор конвейера (|) передает объект процесса Winlogon через конвейер в Format-List. Команда использует параметр Property, чтобы указать свойства и *, чтобы указать все свойства. Так как имя параметра свойства является необязательным, его можно опустить и ввести команду как . Format-List автоматически отправляет результаты в командлет выходных данных по умолчанию для отображения.

Пример 5. Устранение ошибок формата

В следующих примерах показаны результаты добавления параметров DisplayError или ShowError с выражением.

PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -DisplayError

DayOfWeek    : Friday
 $_ / $null  : #ERR

PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError

DayOfWeek    : Friday
 $_ / $null  :

Failed to evaluate expression " $_ / $null ".
+ CategoryInfo          : InvalidArgument: (12/21/2018 7:59:23 AM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : PSPropertyExpressionError

Параметры

-DisplayError

Указывает, что этот командлет отображает ошибки в командной строке. Этот параметр редко используется, но его можно использовать в качестве средства отладки при форматировании выражений в команде Format-List, и выражения, как представляется, не работают.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Expand

Задает отформатированный объект коллекции, а также объекты в коллекции. Этот параметр предназначен для форматирования объектов, поддерживающих интерфейс System.Collections.ICollect ion. Значение по умолчанию — EnumOnly. Допустимые значения для этого параметра:

  • EnumOnly. Отображает свойства объектов в коллекции.
  • CoreOnly. Отображает свойства объекта коллекции.
  • Both. Отображает свойства объекта коллекции и свойства объектов в коллекции.
Тип:String
Допустимые значения:CoreOnly, EnumOnly, Both
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Force

Указывает, что этот командлет отображает все сведения об ошибке. Используйте параметр displayError или showError ShowError. По умолчанию при записи объекта ошибки в потоки ошибок или отображения отображаются только некоторые сведения об ошибке.

Также требуется при форматировании определенных типов .NET. Дополнительные сведения см. в разделе Заметки.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-GroupBy

Указывает выходные данные в группах на основе общего свойства или значения. Введите выражение или свойство выходных данных.

Значение параметра GroupBy может быть новым вычисляемым свойством. Вычисляемое свойство может быть блоком скрипта или хэш-таблицей. Допустимые пары "ключ-значение":

  • Name (или Label) — <string>
  • Expression - <string> или <script block>
  • FormatString - <string>

Дополнительные сведения см. в разделе about_Calculated_Properties.

Тип:Object
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InputObject

Указывает объекты, которые нужно отформатировать. Введите переменную, содержащую объекты или введите команду или выражение, которое получает объекты.

Тип:PSObject
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Property

Указывает свойства объекта, отображаемые в отображении, и порядок их отображения. Разрешены подстановочные знаки.

Если этот параметр опущен, свойства, отображаемые в отображении, зависят от отображаемого объекта. Имя параметра Свойство является необязательным. Нельзя использовать свойств и просмотр параметров в той же команде.

Значение параметра свойства может быть новым вычисляемым свойством. Вычисляемое свойство может быть блоком скрипта или хэш-таблицей. Допустимые пары "ключ-значение":

  • Name (или Label) — <string>
  • Expression - <string> или <script block>
  • FormatString - <string>

Дополнительные сведения см. в разделе about_Calculated_Properties.

Тип:Object[]
Position:0
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-ShowError

Указывает, что командлет отправляет ошибки через конвейер. Этот параметр редко используется, но его можно использовать в качестве средства отладки при форматировании выражений в команде Format-List, и выражения, как представляется, не работают.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-View

Задает имя альтернативного формата списка или представления. Нельзя использовать свойств и просмотр параметров в той же команде.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

PSObject

Вы можете передать любой объект в этот командлет.

Выходные данные

Microsoft.PowerShell.Commands.Internal.Format

Этот командлет возвращает объекты формата, представляющие список.

Примечания

PowerShell включает следующие псевдонимы для Format-List:

  • Все платформы:
    • fl

Командлеты формата, такие как Format-List, упорядочивает отображаемые данные, но не отображают их. Данные отображаются выходными функциями PowerShell и командлетами, содержащими команду Out (командлеты Out), например Out-Host или Out-File.

Если вы не используете командлет формата, PowerShell применяет этот формат по умолчанию для каждого отображаемого объекта.

Параметр GroupBy предполагает, что объекты отсортированы. Используйте Sort-Object перед использованием Format-List для группировки объектов.

Параметр View позволяет указать альтернативный формат таблицы. Представления, определенные в файлах *.format.PS1XML в каталоге PowerShell, можно использовать или создавать собственные представления в новых файлах PS1XML и использовать командлет Update-FormatData для включения их в PowerShell.

Альтернативное представление для параметра представления должно использовать формат списка, в противном случае команда завершается ошибкой. Если альтернативное представление является таблицей, используйте Format-Table. Если альтернативное представление не является списком или таблицей, используйте Format-Custom.

Если вы хотите использовать с параметром свойства , необходимо включить параметр force в любое из следующих условий:

  • Входные объекты форматируются вне полосы с помощью метода ToString(). Это относится к [string] и примитивным типам .NET, которые являются супермножеством встроенных числовых типов, таких как [int], [long]и другие.

  • Входные объекты не имеют открытых свойств.

  • Входные объекты — это экземпляры типов оболочки PowerShell, которые используются для выходных потоков, отличных от потока выходных данных Success. Это применяется только в том случае, если эти типы оболочки отправляются в поток выходных данных Success, который требует, чтобы они были записаны с помощью общих параметров, таких как ErrorVariable, или при использовании перенаправления, например *>&1.