¿Existe algo como esto en Unix?
$ echo "this should show in red" | red
$ echo "this should show in green" | green
$ echo "this should show in blue" | blue
Aquí no me refiero a que aparezca el texto literal del código de color (para pegarlo en un archivo, por ejemplo). Solo quiero decir que el texto se muestre en la terminal como ese color. es posible?
rgb001
,rgb123
etc. Consulte perldoc.perl.org/Term/ANSIColor.html#Supported-Colors para obtener más detalles.Lo usarías
tput
para eso:Esto se puede usar para construir una tubería:
Los colores básicos son respectivamente negro (0), rojo (1), verde, amarillo, azul, magenta, cian y blanco (7). Encontrarás todos los detalles en la página de
terminfo(5)
manual .fuente
Con
zsh
:Y entonces:
fuente
(como se discutió en los comentarios, use
tput
en su lugar si lo tiene)Usando el shell bourne y el
echo
comando (incorporado) que comprende el escape ANSI\e
con la-e
opción:o, script de shell más genérico (digamos
/usr/local/bin/colorize
):IFS=
es necesario para evitar el recorte de espacios en blanco (ver POSIX para más detalles).fuente
tput
.