Powershell: Demande de fonctionnalité : ajouter une colorisation conditionnelle à la commande Format-Table

Créé le 30 mai 2017  ·  3Commentaires  ·  Source: PowerShell/PowerShell

La commande Format-Table dans PowerShell affiche les objets d'une manière fondamentalement similaire à celle des feuilles de calcul Microsoft Excel. Microsoft Excel fournit une fonctionnalité de mise en forme conditionnelle qui permet aux générateurs de feuilles de calcul de modifier le format d'affichage d'une cellule, en fonction de la valeur du contenu de la cellule.

Ce serait vraiment génial si un utilisateur de PowerShell pouvait ajouter des règles de mise en forme conditionnelle aux propriétés de l'objet, en utilisant la commande Format-Table . De cette façon, disons que vous avez un objet avec une propriété Status . Cette propriété peut être émise sous la forme Green si sa valeur est Success ou Red si la valeur de la propriété est Failed .

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

Par exemple, vous pouvez ajouter un spécificateur de propriété personnalisé dans la commande Format-Table comme suit :

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

Dans PowerShell aujourd'hui, nous avons déjà une syntaxe similaire pour créer des « propriétés calculées ». Nous pourrions tirer parti d'une syntaxe similaire pour créer des expressions colorisées dans des tables de données. Cette capacité serait utile pour créer des tableaux de bord basés sur PowerShell et présenter les données de manière plus utile dans la console.

Acclamations,
Trevor Sullivan

Issue-Enhancement WG-Engine

Commentaire le plus utile

Idem pour Format-Custom , Format-List et Format-Wide

Tous les 3 commentaires

Certainement une future amélioration, mais je suis d'accord que ce serait génial.

Idem pour Format-Custom , Format-List et Format-Wide

Pour ceux qui le souhaitent aujourd'hui, Ahmad Adel Gad a proposé une solution, Write-PSObject , sur le centre de scripts de TechNet. https://gallery.technet.microsoft.com/scriptcenter/Format-Table-Colors-in-e0a4beac

Pour la mise en forme conditionnelle, voir l'exemple 16B.01 : Write-PSObject $servers -MatchMethod Exact -Column * -Value $false -ValueForeColor Red;

Il y a une très bonne réflexion sur les options disponibles sur cette CmdLet, cela pourrait donc aussi être une bonne source d'inspiration pour cette demande d'amélioration.

Cette page vous a été utile?
0 / 5 - 0 notes