Muchas veces necesitamos hacer algún script en bash donde queremos que tenga ciertas características, y muchas veces queremos que las salidas por pantalla de ese script se vean distintas para llamar la atención.
![bash_colors](https://sinfallas.files.wordpress.com/2016/11/bash_colors.png?w=584)
Pues bien, se puede usar colores para el texto en el bash de una forma sencilla.
Esta es la lista de algunos de los códigos de color para nuestro texto:
- Negro = 0;30
- Gris oscuro = 1;30
- Azul = 0;34
- Azul claro = 1;34
- Verde = 0;32
- Verde claro = 1;32
- Cyan = 0;36
- Cyan claro = 1;36
- Rojo = 0;31
- Rojo claro = 1;31
- Púrpura = 0;35
- Púrpura claro = 1;35
- Café = 0;33
- Amarillo = 1;33
- Gris = 0;37
- Blanco = 1;37
El comando echo se debe de ejecutar con el parámetro -e haciendo que bash interprete el comando \e (o sea el escape) de esta manera:
echo -e ‘Esto es \e[0;31mrojo\e[0m y esto es \e[1;34mazul resaltado\e[0m’
Resultado: Esto es rojo y esto es azul
echo -e ‘Así se escribe \e[1;34mG\e[0m\e[1;31mo\e[0m\e[1;33mo\e[0m\e[1;34mg\e[0m\e[1;32ml\e[0m\e[1;31me\e[0m’
Resultado: Así se escribe Google
En resumen para poder utilizarlo solo hay que poner los caracteres que quieras que tengan color entre los caracteres de escape de esta manera:
‘\e[CODIGOm(texto)\e[0m’ (el texto sin los paréntesis)
Colores de fondo
De la misma forma podemos cambiar el color de fondo mediante los siguientes valores:
- Negro = 40
- Rojo = 41
- Verde = 42
- Amarillo = 43
- Azul = 44
- Rosa = 45
- Cyan = 46
- Blanco = 47
Para utilizarlo solo debemos seguir la siguiente sintaxis:
echo -e "\e[42mMuestra\e[49m"
Como se puede apreciar en la imagen que acompaña este post las combinaciones pueden ser bastante grandes y solo hace falta un poco de creatividad para crear resultados llamativos. Cabe destacar que el código \e[49m regresa el color de fondo al original.