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


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 *

Для получения объекта, представляющего процесс Winlogon, используется командлет Get-Process. Оператор конвейера (|) передает объект процесса Winlogon через конвейер Format-List. Команда использует параметр Property для указания свойств и * указания всех свойств. Так как имя параметра Property является необязательным, его можно опустить и ввести команду как Format-List *. 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.ICollection . Значение по умолчанию — EnumOnly. Допустимые значения для этого параметра:

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

-Force

Указывает, что этот командлет отображает все сведения об ошибке. Используется с параметром DisplayError или 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

Задает свойства объекта, которые будут включены в вывод, и порядок их вывода. Разрешено использовать подстановочные знаки.

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

Значение параметра 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.

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

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

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

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

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