Write-Host
Écrit une sortie personnalisée dans un hôte.
Syntaxe
Write-Host
[[-Object] <Object>]
[-NoNewline]
[-Separator <Object>]
[-ForegroundColor <ConsoleColor>]
[-BackgroundColor <ConsoleColor>]
[<CommonParameters>]
Description
L’objectif principal de l’applet de commande Write-Host
est de produire une sortie for-(host)-display-only, telle que l’impression de texte coloré comme lors de l’invite de l’utilisateur à entrer conjointement avec en lecture-hôte .
Write-Host
utilise la méthode ToString() pour écrire la sortie. En revanche, pour générer des données vers le pipeline, utilisez sortie en écriture ou une sortie implicite.
Vous pouvez spécifier la couleur du texte à l’aide du paramètre ForegroundColor
, et vous pouvez spécifier la couleur d’arrière-plan à l’aide du paramètre BackgroundColor
. Le paramètre Séparateur vous permet de spécifier une chaîne à utiliser pour séparer les objets affichés. Le résultat particulier dépend du programme qui héberge PowerShell.
Note
À compter de Windows PowerShell 5.0, Write-Host
est un wrapper pour Write-Information
Cela vous permet d’utiliser Write-Host
pour émettre la sortie vers le flux d’informations. Cela permet la capture ou la suppression de données écrites à l’aide de Write-Host
tout en préservant la compatibilité descendante.
La variable de préférence $InformationPreference
et InformationAction
paramètre commun n’affectent pas les messages Write-Host
. L’exception à cette règle est -InformationAction Ignore
, ce qui supprime efficacement Write-Host
sortie. (voir « Exemple 5 »)
Exemples
Exemple 1 : Écrire dans la console sans ajouter de nouvelle ligne
Write-Host "no newline test " -NoNewline
Write-Host "second string"
no newline test second string
Cette commande affiche la chaîne « aucun test newline » avec le paramètre NoNewline
.
Une deuxième chaîne est écrite, mais elle se termine sur la même ligne que la première en raison de l’absence d’une nouvelle ligne séparant les chaînes.
Exemple 2 : Écrire dans la console et inclure un séparateur
Write-Host (2,4,6,8,10,12) -Separator ", +2= "
2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12
Cette commande affiche les nombres pairs de deux à douze. Le paramètre séparateur est utilisé pour ajouter la chaîne , +2=
(virgule, espace, +
, 2
, =
, espace).
Exemple 3 : Écrire avec des couleurs de texte et d’arrière-plan différentes
Write-Host (2,4,6,8,10,12) -Separator ", -> " -ForegroundColor DarkGreen -BackgroundColor White
2, -> 4, -> 6, -> 8, -> 10, -> 12
Cette commande affiche les nombres pairs de deux à douze. Il utilise le paramètre ForegroundColor
pour générer du texte vert foncé et le paramètre BackgroundColor
pour afficher un arrière-plan blanc.
Exemple 4 : Écrire avec des couleurs de texte et d’arrière-plan différentes
Write-Host "Red on white text." -ForegroundColor red -BackgroundColor white
Red on white text.
Cette commande affiche la chaîne « Rouge sur texte blanc ». Le texte est rouge, tel que défini par le paramètre ForegroundColor
. L’arrière-plan est blanc, tel que défini par le paramètre BackgroundColor
.
Exemple 5 : Supprimer la sortie de Write-Host
# The following two statements can be used to effectively suppress output from Write-Host
Write-Host "I won't print" -InformationAction Ignore
Write-Host "I won't print" 6> $null
Ces commandes suppriment efficacement la sortie de l’applet de commande Write-Host
. Le premier utilise le paramètre InformationAction
avec la valeur Ignore
pour supprimer la sortie dans le flux d’informations.
Le deuxième exemple redirige le flux d’informations de la commande vers la variable $null
et le supprime ainsi. Pour plus d’informations, consultez about_Output_Streams.
Paramètres
-BackgroundColor
Spécifie la couleur d’arrière-plan. Il n’y a pas de valeur par défaut. Les valeurs acceptables pour ce paramètre sont les suivantes :
Black
DarkBlue
DarkGreen
DarkCyan
DarkRed
DarkMagenta
DarkYellow
Gray
DarkGray
Blue
Green
Cyan
Red
Magenta
Yellow
White
Type: | ConsoleColor |
Valeurs acceptées: | Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ForegroundColor
Spécifie la couleur du texte. Il n’y a pas de valeur par défaut. Les valeurs acceptables pour ce paramètre sont les suivantes :
Black
DarkBlue
DarkGreen
DarkCyan
DarkRed
DarkMagenta
DarkYellow
Gray
DarkGray
Blue
Green
Cyan
Red
Magenta
Yellow
White
Type: | ConsoleColor |
Valeurs acceptées: | Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-NoNewline
Les représentations sous forme de chaîne des objets d’entrée sont concaténées pour former la sortie. Aucun espace ou nouvelle ligne n’est inséré entre les chaînes de sortie. Aucune nouvelle ligne n’est ajoutée après la dernière chaîne de sortie.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Object
Objets à afficher dans l’hôte.
Type: | Object |
Alias: | Msg, Message |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Separator
Spécifie une chaîne de séparation à insérer entre les objets affichés par l’hôte.
Type: | Object |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
Vous pouvez diriger les objets à écrire sur l’hôte dans cette applet de commande.
Sorties
None
Cette applet de commande ne retourne aucune sortie. Il envoie les objets à l’hôte. L’hôte affiche les objets que cette applet de commande lui envoie.
Notes
Lors de l’écriture d’une collection sur l’hôte, les éléments de la collection sont imprimés sur la même ligne séparée par un espace unique. Cela peut être remplacé par le paramètre Séparateur.
Les types de données non primitifs tels que les objets avec des propriétés peuvent provoquer des résultats inattendus et ne fournissent pas de sortie significative. Par exemple,
Write-Host @{a = 1; b = 2}
imprimeSystem.Collections.DictionaryEntry System.Collections.DictionaryEntry
sur l’hôte.