Como mudar as cores no PowerShell
- Introdução à Mudança de Cores no PowerShell
-
Use a Classe
[System.Enum]
no PowerShell - Mudando a Cor do Console no PowerShell

Este artigo discutirá como mudar as cores das fontes, a cor de fundo dos scripts e a cor da janela do console usando PowerShell.
Introdução à Mudança de Cores no PowerShell
Esses comandos recuperam um objeto com informações sobre o console do PowerShell, o host do console.
Comando:
$host
Saída:
Name : Windows PowerShell ISE Host
Version : 5.1.22000.282
InstanceId : 8cff2bea-868b-4d9e-b55a-06a3f4b8c20c
UI : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture : en-PH
CurrentUICulture : en-US
PrivateData : Microsoft.PowerShell.Host.ISE.ISEOptions
DebuggerEnabled : True
IsRunspacePushed : False
Runspace : System.Management.Automation.Runspaces.LocalRunspace
A propriedade PrivateData
tem todas as propriedades de cor que estamos procurando.
Comando:
$host.PrivateData
Saída:
ErrorForegroundColor : #FFFF9494
ErrorBackgroundColor : #00FFFFFF
WarningForegroundColor : #FFFF8C00
WarningBackgroundColor : #00FFFFFF
VerboseForegroundColor : #FF00FFFF
VerboseBackgroundColor : #00FFFFFF
DebugForegroundColor : #FF00FFFF
DebugBackgroundColor : #00FFFFFF
ConsolePaneBackgroundColor : #FF012456
ConsolePaneTextBackgroundColor : #FF012456
ConsolePaneForegroundColor : #FFF5F5F5
ScriptPaneBackgroundColor : #FFFFFFFF
ScriptPaneForegroundColor : #FF000000
As cores são definidas para os fluxos de Avisos, Erros, Depuração, Verboso e Progresso dentro do objeto $host.PrivateData
. Tente mudar um desses valores e veja se seu console também muda de cor.
Comando:
$host.PrivateData.ErrorBackgroundColor = "White"
Saída:
Black
DarkBlue
DarkGreen
DarkCyan
DarkRed
DarkMagenta
DarkYellow
Gray
DarkGray
Blue
Green
Cyan
Red
Magenta
Yellow
White
A saída exibida no console é texto branco puro (se as cores padrão não foram alteradas). Execute o comando a seguir para exibir as cores do console em suas respectivas cores.
Comando:
[System.Enum]::GetValues('ConsoleColor') |
ForEach-Object { Write-Host $_ -ForegroundColor $_ }
Saída:
Suponha que queiramos ver quais combinações de cores funcionariam e se ajustariam à nossa preferência. Nesse caso, podemos usar o comando abaixo que mostrará todas as possíveis cores de primeiro plano em todas as possíveis cores de fundo.
Comando:
$colors = [enum]::GetValues([System.ConsoleColor])
Foreach ($bgcolor in $colors) {
Foreach ($fgcolor in $colors) {
Write-Host "$fgcolor|" -ForegroundColor $fgcolor -BackgroundColor $bgcolor -NoNewline
}
Write-Host " on $bgcolor"
}
Saída:
Mudando a Cor do Console no PowerShell
Mudar a cor de primeiro plano do console e a cor de fundo é ligeiramente diferente do nosso objeto anterior. Podemos tentar o trecho abaixo para mudar a cor do texto e a janela do console do PowerShell.
Comando:
$host.UI.RawUI.ForegroundColor = "DarkGreen"
$host.UI.RawUI.BackgroundColor = "Black"
cls
Saída:
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn