Heim >Backend-Entwicklung >C++ >Wie kann ich farbigen Text in einem Linux-Terminal drucken?

Wie kann ich farbigen Text in einem Linux-Terminal drucken?

Barbara Streisand
Barbara StreisandOriginal
2024-12-23 07:21:11150Durchsuche

How Can I Print Colored Text in a Linux Terminal?

Farbigen Text an ein Linux-Terminal ausgeben

Frage: Wie kann ich farbigen Text in einem Linux-Terminal anzeigen? unterstützt diese Funktion?

Antwort: Um farbige Zeichen auszugeben, müssen Sie verwenden ANSI-Farbcodes. Es ist jedoch wichtig zu beachten, dass nicht alle Terminals über diese Funktion verfügen. Wenn Farbsequenzen nicht unterstützt werden, zeigt das Terminal stattdessen Müll an.

Zum Beispiel:

cout << "3[1;31mbold red text3[0m\n";

In diesem Beispiel ist 33 das Escape-Zeichen, ASCII 27. Es folgt [ , dann eine oder mehrere durch ; getrennte Zahlen und schließlich der Buchstabe m. Die Zahlen geben die Farbe und Formatierung an, die ab diesem Zeitpunkt angewendet werden sollen.

Farbcodes:

Die Codes für Vordergrund- und Hintergrundfarben lauten wie folgt:

Foreground Background
30 40 (Black)
31 41 (Red)
32 42 (Green)
33 43 (Yellow)
34 44 (Blue)
35 45 (Magenta)
36 46 (Cyan)
37 47 (White)

Zusätzliche Codes:

Darüber hinaus können Sie diese nutzen Codes:

Code Description
0 Reset (everything back to normal)
1 Bold/Bright (often a brighter shade of the same colour)
4 Underline
7 Inverse (swap foreground and background colours)
21 Bold/Bright off
24 Underline off
27 Inverse off

Weitere, weniger weit verbreitete Codes finden Sie auf der Wikipedia-Seite.

Terminal-Support-Check:

Um festzustellen, ob Ihr Terminal Wenn Farbsequenzen unterstützt werden, prüfen Sie den Wert der Umgebungsvariablen TERM. Es sollte den spezifischen verwendeten Terminaltyp angeben (z. B. vt100, gnome-terminal, xterm, screen, ...). Überprüfen Sie anschließend die Farbfähigkeit in der terminfo-Datenbank.

Das obige ist der detaillierte Inhalt vonWie kann ich farbigen Text in einem Linux-Terminal drucken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn