script - Bash colorea una palabra usando echo
operadores logicos bash (2)
Quiero colorear una palabra en medio de una oración de eco, pero no puedo lograrlo.
Esto funciona:
#!/bin/bash
wipe="/033[1m/033[0m"
yellow=''/E[1;33''
echo -e "$yellow"
echo Hello World
echo -e "$wipe"
Pero esto no:
#!/bin/bash
wipe="/033[1m/033[0m"
yellow=''/E[1;33''
black="40m"
echo -e "Output a $yellow coloured $wipe word."
# or
echo -e "Output a ${yellow} coloured ${wipe} word."
¿Qué estoy haciendo estúpidamente mal? :)
Mucho mejor, use tput para establecer un color de primer plano:
textreset=$(tput sgr0) # reset the foreground colour
red=$(tput setaf 1)
yellow=$(tput setaf 2)
echo "Output a ${yellow} coloured ${textreset} ${red} word ${textreset}."
Olvidó una m
en su código de escape ANSI para yellow
. Esto funciona:
yellow=''/E[1;33m''