| |
| |
Farbige Ausgabe auf der Konsole |
22. Januar 2006
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 "Jetzt wird es \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[0m | alle Attribute zurücksetzen |
| \033[1m | Fettschrift |
| \033[4m | Unterstreichen |
| \033[5m | Blinken |
| \033[7m | inverse Darstellung |
| \033[30m | Schriftfarbe schwarz |
| \033[31m | Schriftfarbe rot |
| \033[32m | Schriftfarbe grün |
| \033[33m | Schriftfarbe gelb |
| \033[34m | Schriftfarbe blau |
| \033[35m | Schriftfarbe magenta |
| \033[36m | Schriftfarbe türkis |
| \033[37m | Schriftfarbe weiß |
| \033[40m | Hintergrund schwarz |
| \033[41m | Hintergrund rot |
| \033[42m | Hintergrund grün |
| \033[43m | Hintergrund gelb |
| \033[44m | Hintergrund blau |
| \033[45m | Hintergrund magenta |
| \033[46m | Hintergrund türkis |
| \033[47m | Hintergrund weiß |
|
|
|