Ihr Anliegen

Sie wollen in Ihren Shellskripten farbige Textausgaben produzieren. Sie haben das an verschiedenen Stellen schon gesehen (z.B. beim Starten der Dienste beim Booten) und fragen sich, wie das wohl funktioniert.

Das Prinzip dahinter

Alle unter Linux üblichen Terminalemulationen (z.B. xterm, konsole, die Linux-Konsole, PuTTY) verstehen bestimmte Steuerzeichen, mit denen man Textattribute beeinflussen kann. Diese muss man einfach mit echo ausgeben.

So geht's im Einzelnen

Alle Steuersequenzen werden eingeleitet mit Escape [. Danach kommt eine Zahl und dann ein kleines m. Das Escape-Zeichen hat den Asciicode 27. Damit man es mit echo ausgeben kann, muss man die Option -e verwenden und dann die Sequenz \033 eintragen:

echo -e "Now this becomes \033[31mROT\033[0m."

Jetzt wird es ROT.

Einige wichtige Steuerzeichen

Folgende Tabelle gibt einen Überblick über einige nützliche Sequenzen. Dabei ist zu beachten, dass nicht jede Terminalemulation alle Attribute korrekt darstellen kann. Manchmal wird z.B. Fettschrift durch ersatzweise durch eine größere Helligkeit dargestellt:

\033[0malle Attribute zurücksetzen
\033[1mFettschrift
\033[4mUnterstreichen
\033[5m
Blinken
\033[7m
inverse Darstellung
\033[30mSchriftfarbe Schwarz
\033[31mSchriftfarbe rot
\033[32mSchriftfarbe grün
\033[33mSchriftfarbe gelb
\033[34mSchriftfarbe blau
\033[35mSchriftfarbe magenta
\033[36mSchriftfarbe türkis
\033[37mSchriftfarbe weiß
\033[40mHintergrund schwarz
\033[41mHintergrund rot
\033[42mHintergrund grün
\033[43mHintergrund gelb
\033[44mHintergrund blau
\033[45mHintergrund magenta
\033[46mHintergrund türkis
\033[47mHintergrund weiß

Wissensbank Linux

Diese Artikel wurden vom Gründer von Checkmk vor vielen Jahren geschrieben. Sie sind immer noch gültig und haben deshalb weiterhin ihr Zuhause auf dieser Webseite. Mathias hat in der Zwischenzeit die Monitoringlösung Checkmk entwickelt

Mehr zu Checkmk