Die Steuerbefehls-Zeichen für das Einfärben der Komanozeile ist hier kurz erklärt.
Die einzelnen Steuerzeichengruppen können kombiniert werden. Wenn also ein echo Befehl mit den Steuerzeichen aufgerufen wird kann die Ausgabe gesteuert werden.
Anmerkung: Wurde ein "Einfärben" gestarten muss am Ende auch ein "Entfärben" aufgerufen werden.
Folgender Befehl mit den Steuersequenzen fett, blau und dann wieder normal und default
echo -e "Guten \e[1m\e[34mMorgen\e[0m liebe Sorgen, seit ihr auch schon wieder da?"
würde dies anzeigen:
Guten Morgen liebe Sorgen, seit ihr auch schon wieder da?"
In einem Shell-Script kann das Ganze auch einer Variablen zugewiesen weden. Es macht jedoch eiinen Unterschied ob das Script per sh scriptname.sh oder ./scriptname.sh (Script muss ausführbar sein) aufgerufen wird. Mit einer if-Abfrage kann das abgefangen werden
if [ -z ${BASH_SOURCE} ]; then
blau=`echo "\e[1m\e[34m"`
normal=`echo "\e[0m"`
else
blau=`echo -e "\e[1m\e[34m"`
normal=`echo -en "\e[0m"`
fi
echo "Guten ${blau}Morgen${normal} liebe Sorgen, seit ihr auch schon wieder da?"
Hier die Syntax: \ Backlsash e mit [ eckiger Klammer auf gefolgt von einer 0 Zahl m schließt das Ganze ab.
Es können auch Angaben kombiniert werden z.B \e[4;36;47m
Steuerzeichen | ||||||
Buchstaben-Farbe | Hintergrundfarbe | |||||
Standard | (default) | \e[39m | \e[49m | |||
schwarz | (black) | \e[30m | \e[40m | |||
rot | (red) | \e[31m | \e[41m | |||
grün | (green) | \e[32m | \e[42m | |||
gelb | (orange) | \e[33m | \e[43m | |||
blau | (blue) | \e[34m | \e[44m | |||
lila | (purple) | \e[35m | \e[45m | |||
grün-blau | (aqua) | \e[36m | \e[46m | |||
grau | (gray) | \e[37m | \e[47m | |||
dunkelgrau | (darkgray) | \e[90m | \e[1;30m | \e[100m | ||
hellrot | (lightred) | \e[91m | \e[1;31m | \e[101m | ||
hellgrün | (lightgreen) | \e[92m | \e[1;32m | \e[102m | ||
hellgelb | (lightyellow) | \e[93m | \e[1;33m | \e[103m | ||
hellblau | (lightblue) | \e[94m | \e[1;34m | \e[104m | ||
helllila | (lightpurple) | \e[95m | \e[1;35m | \e[105m | ||
hell-blau | (lightaqua) | \e[96m | \e[1;36m | \e[106m | ||
weiß | (white) | \e[97m | \e[1;37m | \e[107m |
Buchstaben-Stil | Steuerzeichen | |
normal | (normal) | \e[0m |
heller (fett) | (bold) | \e[1m |
kursiv (gedimmt) | (dim) | \e[2m oder \e[3m |
unterstrich | (underline) | \e[4m |
Text u Hintergrund tauschen die Farbe |
(reverse) | \e[7m |
(ohne Wirkung) | ||
durchgestrichen | (strickthrough) | \e[9m |
blinken | (blink) | \e[5m oder \e[6m |
versteckt | (hidden) | \e[8m |
Alle Farbkombinationen als Bash Kommande
for x in {0..8}; do for i in {30..37}; do for a in {40..47}; do echo -ne "\e[$x;$i;$a""m\\\e[$x;$i;$a""m\e[0;37;40m "; done; echo; done; done; echo ""
Farb-Beispiele