Changer de couleur sur une ligne dans un tableau

Plus d'informations
il y a 3 ans 2 mois #23413 par Notable
Bonjour à tous j'utilise le script suivant pour lister les processus sur mon poste.

$processName = $args[0]
Write-Host \"Affichage des processus contenant : $processName\"
$p = Get-Process | Where-Object { $_.Name -like \"*$processName*\" }
$p | Format-table Id,Name,WS,Responding

Je voudrais savoir comment faire pour mettre le premier processus en rouge par exemple ou alors mettre un certain nombre de processus en couleur suivant les critères.*

Merci d'avance

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 2 mois #23414 par Laurent Dardenne
Salut,
je crois que le seul moyen en PS est d'utiliser un fichier de formatage .PSXML1.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 2 mois #23415 par Notable
Merci Laurent j'essaye cette voie

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 2 mois #23416 par Laurent Dardenne
Un exemple :
[code:1]
$File='C:\Temp\ProcessColors.format.ps1xml'
@'
<?xml version=\"1.0\" encoding=\"utf-8\" ?>
<Configuration>
<ViewDefinitions>
<View>
<Name>ProcessViewWithColors</Name>
<ViewSelectedBy>
<TypeName>System.Diagnostics.Process</TypeName>
</ViewSelectedBy>
<TableControl>
<TableHeaders>
<TableColumnHeader>
<Label>Name:ID</Label>
</TableColumnHeader>
<TableColumnHeader>
<Label>WorkingSet</Label>
</TableColumnHeader>
</TableHeaders>
<TableRowEntries>
<TableRowEntry>
<TableColumnItems>
<TableColumnItem>
<ScriptBlock>$_.ProcessName + \":\" + $_.Id</ScriptBlock>
</TableColumnItem>
<TableColumnItem>
<ScriptBlock>
if ( $_.workingset -gt 20MB ) { $host.ui.rawui.foregroundcolor = \"red\" }
elseif ($_.workingset -gt 10MB«») { $host.ui.rawui.foregroundcolor = \"yellow\" }
else { $host.ui.rawui.foregroundcolor = \"green\" }
[int]($_.WorkingSet/1024)
</ScriptBlock>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
</TableControl>
</View>
</ViewDefinitions>
</Configuration>
'@ > $File
Update-FormatData -PrependPath $File
Get-Process

[/code:1]
Reste à modifier la condition associée à chaque couleur<br><br>Message édité par: Laurent Dardenne, à: 30/03/17 15:46

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 2 mois #23417 par Laurent Dardenne
Un oubli, la modification de la couleur par défaut doit être rétabli dans le bloc End de la fonction out-default.
Sinon la dernière couleur modifiée par le scriptblock du fichier de formatage persiste.
A vérifier si c'est tjr le cas avec les dernières versio ns de PS.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 2 mois #23418 par Notable
Grand merci Laurent pour ce script ça me permettra d'évoluer.

Par contre si je comprend bien il me faut un dossier dans lequel les couleurs sont référencer? 'C:\Temp\ProcessColors.format.ps1xml'<br><br>Message édité par: Notable, à: 30/03/17 14:57

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.229 secondes
Propulsé par Kunena