Búsqueda de sitios web

PowerShell: cómo utilizar Write-Host con colores específicos


Puede utilizar el cmdlet Write-Host en PowerShell para enviar texto a la consola.

Para controlar el color del texto utilizado con Write-Host, puede utilizar los siguientes métodos:

Método 1: especificar un color para usar con Write-Host

Write-Host "This text is in red" -f red

Método 2: especificar varios colores para usar con Write-Host

Write-Host "I am red " -f red -nonewline; Write-Host "I am blue " -f blue;

Los siguientes ejemplos muestran cómo utilizar cada método en la práctica.

Ejemplo 1: especificar un color para usar con Write-Host

Supongamos que desea utilizar el cmdlet Write-Host en PowerShell para mostrar el texto "Hola a todos" en la consola.

Supongamos que utilizamos la siguiente sintaxis para hacerlo:

Write-Host "Hey there everyone"

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

De forma predeterminada, el color de fuente del texto es gris.

En cambio, para mostrar el texto en una fuente roja, podemos usar la siguiente sintaxis:

Write-Host "Hey there everyone" -f red

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Observe que el texto ahora se muestra con una fuente roja, tal como lo especificamos.

Ejemplo 2: Especificar varios colores para usar con Write-Host

Supongamos que desea utilizar el cmdlet Write-Host para mostrar una parte del texto en un color y otra parte del texto en otro color.

Puede utilizar la siguiente sintaxis para hacerlo:

Write-Host "I am red " -f red -nonewline; Write-Host "I am blue " -f blue;

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Observe que la primera parte del texto se muestra con fuente roja, mientras que la última parte del texto se muestra con fuente azul.

Bonificación: Mostrar lista de todos los colores posibles en PowerShell

PowerShell le permite especificar 16 colores diferentes para usar en la consola.

Puede utilizar la siguiente sintaxis para mostrar esta lista completa de colores:

[Enum]::GetValues([System.ConsoleColor]) | foreach { Write-Host "$_" -ForegroundColor $_}

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Cada uno de los 16 colores se muestra en una lista.

Tenga en cuenta que el primer color de la lista es "negro", que no se puede ver porque el color de fondo de la consola también es negro.

Nota: Puede encontrar la documentación completa para el cmdlet Write-Host en PowerShell aquí.

Artículos relacionados