Powershell: Запрос функции: добавить условную раскраску в команду Format-Table

Созданный на 30 мая 2017  ·  3Комментарии  ·  Источник: PowerShell/PowerShell

Команда Format-Table в PowerShell отображает объекты принципиально аналогично таблицам Microsoft Excel. Microsoft Excel предоставляет функцию условного форматирования, которая позволяет разработчикам электронных таблиц изменять формат отображения ячейки в зависимости от значения содержимого ячейки.

Было бы здорово, если бы пользователь PowerShell мог добавлять правила условного форматирования к свойствам объекта, используя команду Format-Table . Таким образом, допустим, у вас есть объект со свойством Status . Это свойство может быть передано как Green если его значение равно Success или Red если значение свойства равно Failed .

Name   Status
----   ------
Step 1 Failed (Red)
Step 2 Success (Green)

Например, вы можете добавить спецификатор настраиваемого свойства в команду Format-Table следующим образом:

Get-SomeObjects | Format-Table -Property Name, @{ Name = 'Status'; Color = 'Green'; Value = '^Success$' }

Сегодня в PowerShell у нас уже есть аналогичный синтаксис для создания «вычисляемых свойств». Мы могли бы использовать аналогичный синтаксис для построения раскрашенных выражений в таблицах данных. Эта возможность была бы полезна для создания панелей мониторинга на основе PowerShell и более удобного представления данных в консоли.

Ваше здоровье,
Тревор Салливан

Issue-Enhancement WG-Engine

Самый полезный комментарий

То же самое для Format-Custom , Format-List и Format-Wide

Все 3 Комментарий

Определенно будущее улучшение, но я согласен, это было бы здорово.

То же самое для Format-Custom , Format-List и Format-Wide

Для всех, кто хочет этого сегодня, Ахмад Адель Гад предложил решение Write-PSObject в Центре сценариев TechNet. https://gallery.technet.microsoft.com/scriptcenter/Format-Table-Colors-in-e0a4beac

Для условного форматирования см. Пример 16B.01: Write-PSObject $servers -MatchMethod Exact -Column * -Value $false -ValueForeColor Red;

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

Была ли эта страница полезной?
0 / 5 - 0 рейтинги