Affichage
Il faut distinguer le formatage de l'affichage et les modes d'affichage.
Objectifs
À la fin de ce chapitre, vous serez capable de :
- Choisir le bon format d’affichage (Format-List/Wide/Table).
- Comprendre la différence entre formatage et sortie.
- Utiliser les cmdlets Write-* pour informer, diagnostiquer et signaler.
Le formatage va définir la façon dont l'information sera "mise en page", alors que le mode d'affichage définira où et quels types d'informations seront traitées.
Formatage
Il y a 4 formatages possibles :
Format-List=> listeFormat-Wide=> colonnes sur la largeur de pageFormat-Table=> tableauFormat-Custom=> personnalisé
Liste
Get-Service u* | Format-List DisplayName, Status
Tableau
Get-Service u* | Format-Table DisplayName, Status
Largeur de page, -AutoSize adapte le nombre de colonnes en fonction de l'espace
Get-Service u* | Format-Wide DisplayName -Column 2
Modes
Write-Host
Affiche uniquement sur la console :
Write-Host "bonjour toto"Write-Output
Sortie avec redirection possible :
Write-Output "bonjour toto"Ici, les 2 Write donneront le même résultat :
Si on utilise la redirection dans un fichier. Le fichier titi.txt sera vide, car c'est un affichage sur l'écran seulement.
Write-Host "bonjour titi" > d:\temp\titi.txtLe fichier tutu.txt contiendra le texte, car cette Cmdlet permet la redirection dans un fichier :
Write-Output "bonjour tutu" > d:\temp\tutu.txtSi les informations que l'on veut ajouter dans le fichier sont seulement les erreurs ("canal" 1 correspond à standard console et 2 à standard erreur).
Le fichier erreurs.txt contiendra l'information du message d'erreur, car il n'y a pas de service qui s'appelle web :
Get-Service web 2> d:\log\erreurs.txtLe fichier sera vide car il trouve un service WebClient :
Get-Service web* 2> d:\log\erreurs.txtWrite-Verbose
Affiche un message complémentaire en bleu par exemple pour information dans l'execution d'un script pas de redirection et le début de ligne du message commence par COMMENTAIRES :
Write-Verbose Hello -VerboseWrite-Debug
Débogage d'un script, pas de redirection, commence par DEBOGUER :
Write-Debug "point de debug" -debugWrite-Warning
Affiche un message d'avertissement en orange, pas de redirection et commence par AVERTISSEMENT :
Write-Warning "hello"Write-Error
Affiche un message en rouge, redirection seulement pour les erreurs :
Write-Error "Erreur"Résumé
- Le formatage concerne la présentation, pas les données.
- La sortie peut être orientée écran/fichier selon le besoin.
- Les cmdlets Write-* aident à structurer l’exécution et les messages.
