Flash info

"Si vous vivez chaque jour comme si c'était le dernier, un jour vous aurez probablement raison."

Steve Jobs (1955-2011)

 
Accueil arrow Forum

Bienvenue sur le forum PowerShell-Scripting.com

 
Notable
Utilisateur

PowerShelleur Débutant
Messages: 4
graphgraph
Karma: 0  
Changer de couleur sur une ligne dans un tableau - 29/03/17 17:44 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
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5295
graph
Karma: 193  
Re:Changer de couleur sur une ligne dans un tableau - 29/03/17 18:15 Salut,
je crois que le seul moyen en PS est d'utiliser un fichier de formatage .PSXML1.
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
Notable
Utilisateur

PowerShelleur Débutant
Messages: 4
graphgraph
Karma: 0  
Re:Changer de couleur sur une ligne dans un tableau - 30/03/17 09:19 Merci Laurent j'essaye cette voie
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5295
graph
Karma: 193  
Re:Changer de couleur sur une ligne dans un tableau - 30/03/17 10:41 Un exemple :
Code:

  $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  


Reste à modifier la condition associée à chaque couleur

Message édité par: Laurent Dardenne, à: 30/03/17 15:46
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5295
graph
Karma: 193  
Re:Changer de couleur sur une ligne dans un tableau - 30/03/17 10:46 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
  | | L'administrateur a désactivé l'accés public en écriture.
Notable
Utilisateur

PowerShelleur Débutant
Messages: 4
graphgraph
Karma: 0  
Re:Changer de couleur sur une ligne dans un tableau - 30/03/17 14:54 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:TempProcessColors.format.ps1xml'

Message édité par: Notable, à: 30/03/17 14:57
  | | L'administrateur a désactivé l'accés public en écriture.
Notable
Utilisateur

PowerShelleur Débutant
Messages: 4
graphgraph
Karma: 0  
Re:Changer de couleur sur une ligne dans un tableau - 30/03/17 15:24 C'est top j'ai arrangé. il fallait juste que je change le lien en mettant celui du répertoire dans lequel mon script est exécuté. Merci encore pour l'aide.
  | | L'administrateur a désactivé l'accés public en écriture.
© 2017 PowerShell-Scripting.com