Форматирование выводимой информации

В традиционных оболочках команды и утилиты сами форматируют выводимые данные. Некоторые команды (например, dir в интерпретаторе Cmd.exe) позволяют настраивать формат вывода с помощью специальных параметров.

В оболочке PowerShell вывод форматируют только четыре специальных командлета Format (табл. 17.3). Это упрощает изучение, так как не нужно запоминать средства и параметры форматирования для других команд (остальные командлеты вывод не форматируют).

Таблица 17.3. Командлеты PowerShell для форматирования вывода
Командлет Описание
Format-Table Форматирует вывод команды в виде таблицы, столбцы которой содержат свойства объекта (также могут быть добавлены вычисляемые столбцы). Поддерживается возможность группировки выводимых данных
Format-List Вывод форматируется как список свойств, в котором каждое свойство отображается на новой строке. Поддерживается возможность группировки выводимых данных
Format-Custom Для форматирования вывода используется пользовательское представление (view)
Format-Wide Форматирует объекты в виде широкой таблицы, в которой отображается только одно свойство каждого объекта

Как уже отмечалось выше, если ни один из командлетов Format явно не указан, то используется модуль форматирования по умолчанию, который определяется по типу отображаемых данных. Например, при выполнении командлета Get-Service данные по умолчанию выводятся как таблица с тремя столбцами (Status, Name и DisplayName):

PS C:\> Get-Service

 

Status Name DisplayName

------ ---- -----------

Stopped Alerter Оповещатель

Running ALG Служба шлюза уровня приложения

Stopped AppMgmt Управление приложениями

Stopped aspnet_state ASP.NET State Service

Running Ati HotKey Poller Ati HotKey Poller

Running AudioSrv Windows Audio

Running BITS Фоновая интеллектуальная служба пер...

Running Browser Обозреватель компьютеров

Stopped cisvc Служба индексирования

Stopped ClipSrv Сервер папки обмена

Stopped clr_optimizatio... .NET Runtime Optimization Service v...

Stopped COMSysApp Системное приложение COM+

Running CryptSvc Службы криптографии

Running DcomLaunch Запуск серверных процессов DCOM

Running Dhcp DHCP-клиент

...

Для изменения формата выводимых данных нужно направить их по конвейеру соответствующему командлету Format. Например, следующая команда выведет список служб с помощью командлета Format-List:

PS C:\> Get-Service | Format-List

 

Name : Alerter

DisplayName : Оповещатель

Status : Stopped

DependentServices : {}

ServicesDependedOn : {LanmanWorkstation}

CanPauseAndContinue : False

CanShutdown : False

CanStop : False

ServiceType : Win32ShareProcess

 

Name : ALG

DisplayName : Служба шлюза уровня приложения

Status : Running

DependentServices : {}

ServicesDependedOn : {}

CanPauseAndContinue : False

CanShutdown : False

CanStop : True

ServiceType : Win32OwnProcess

. . .

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

При форматировании вывода с помощью командлетов Format-List и Format-Table можно указывать имена свойства объекта, которые должны быть отображены (напомним, что просмотреть список свойств, имеющихся у объекта, позволяет рассмотренный ранее командлет Get-Member ). Например:

PS C:\> Get-Service | Format-List Name, Status, CanStop

 

Name : Alerter

Status : Stopped

CanStop : False

 

Name : ALG

Status : Running

CanStop : True

 

Name : AppMgmt

Status : Stopped

CanStop : False

. . .

Вывести все имеющиеся у объектов свойства можно с помощью параметра *, например:

PS C:\> Get-Service | Format-table *








Дата добавления: 2018-03-01; просмотров: 406;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.