So ändern Sie die Ausgabefarbe von Echo in Linux PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

So ändern Sie die Ausgabefarbe von Echo in Linux

Einleitung

Das echo Befehl gibt eine bestimmte Zeichenfolge an die aus Standard-Ausgangsrohr, zeigt normalerweise auf das Terminal. Obwohl die Standard-Ausgangsleitung auf andere Schnittstellen zeigen kann – die echo Der Befehl wird normalerweise verwendet, um Nachrichten im Terminal zu drucken und anzuzeigen. Standardmäßig erbt der Text der angezeigten Nachricht die Farbe von anderem Text im Terminal (der an und für sich anpassbar ist). Es gibt jedoch mehrere Möglichkeiten, die Ausgabefarbe zu ändern echo – sowohl für einzelne Strings als auch für ganze Nachrichten.

In dieser kurzen Anleitung sehen wir uns an, wie Sie die Ausgabefarbe von ändern können echo in Linux-basierten Systemen mit ANSI-Escape-Codes, tput und wie Sie diesen Prozess in Bash-Skripten weniger ausführlich gestalten können.

Ändern Sie die Ausgabefarbe mit ANSI-Escape-Codes

Der einfachste Weg, die Farbe zu ändern, ist durch ANSI-Escape-Sequenzen/Codes. Alle ANSI-Escape-Codes beginnen mit dem Escape Charakter, der in verschiedenen Formaten dargestellt werden kann – 27 in Dezimalzahl, x1B im Hexadezimalformat als Steuerschlüssel ^[, oder 33 im Oktalformat. Auf die Sequenzen folgt dann der Befehl:

33[command

Wo die öffnende Klammer (Kontrollsequenz-Einführer) ist optional, hilft aber, den Befehl vom Escape-Zeichen zu trennen. Wenn Sie a setzen Farbcode als Befehl ändert es die Farbe des eingehenden Textes:

33[0;34

0;34 ist beispielsweise der Code für die Farbe Blau. Damit allein können Sie die Farbe des Textes ändern echo mit:

33[0;34Text

Wo Text wäre blau gefärbt. Alternativ können Sie ein einfaches Bash-Skript zum Drucken in Betracht ziehen "Willkommen in Frankreich" in den Farben der französischen Flagge:

#!/bin/bash  
BLUE='33[0;34m'
WHITE= '33[0;37m' 
RED= '33[0;31m'   
echo -e "${Blue}Welcome ${WHITE}to ${RED}France"

Das optionale -e Flagge der echo Befehl können Sie Sonderzeichen wie verwenden n (Newline) und t (Tabulator) innerhalb der Eingabezeichenfolge.

Sobald Sie das Skript ausgeführt haben:

$ ./colors.sh

Es fuehrt zu:

So ändern Sie die Ausgabefarbe von Echo in Linux PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Die ANSI-Codes beschränken sich nicht nur auf die Farbe – sondern können auch für den Stil verwendet werden. Die Codes 0..9 Textstile darstellen, während die Codes 30...37 Farben darstellen:

Farbe Codes Textstile Codes
Schwarz 30 Einfacher Text 0
Rot 31 Fetter Text 1
Grün 32 Text mit geringer Intensität 2
Braun / Orange 33 Text unterstreichen 4
Blau 34 Blinkender Text 5
Lila 35 Unsichtbarer Text 8
Cyan 36 Durchgestrichener Text 9
Hellgrau 37

Lassen Sie uns ein Bash-Skript erstellen, um einige dieser Optionen zu erkunden:

#!/bin/bash
echo -e "33[0;33mSample text"
echo -e "33[1;33mBold text"
echo -e "33[2;33mLow intensity text"
echo -e "33[4;33mUnderline text"
echo -e "33[5;33mBlinking text"
echo -e "33[8;33mInvisible text"
echo -e "33[9;33mStrikethrough text"

Das Ausführen dieses Skripts führt zu:

So ändern Sie die Ausgabefarbe von Echo in Linux PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Sehen Sie sich unseren praxisnahen, praktischen Leitfaden zum Erlernen von Git an, mit Best Practices, branchenweit akzeptierten Standards und einem mitgelieferten Spickzettel. Hören Sie auf, Git-Befehle zu googeln und tatsächlich in Verbindung, um es!

Ebenso können Sie die Hintergrundfarbe dieser Texte über Codes ändern 40..47:

Farbe Codes
Schwarz 40
Rot 41
Grün 42
Braun / Orange 43
Blau 44
Lila 45
Cyan 46
Hellgrau 47

Das Ändern des Hintergrunds einer bestimmten Zeichenfolge läuft auf dieselbe Regel hinaus wie beim Ändern der Schriftfarbe – der Code selbst ändert das Verhalten:

#!/bin/bash
BLUE='33[0;44m'
BLACK='33[0;30m'
WHITE='33[0;30;47m'
RED='33[0;41m'
echo -e "${BLUE}Welcome ${WHITE}to ${RED}France"

Hinweis: Als Faustregel gilt: Sie können Schriftfarben in Hintergrundfarben übersetzen, indem Sie 10 addieren. 30 ist schwarze Schriftfarbe, 40 ist schwarze Hintergrundfarbe.

Ändern Sie die Ausgabefarbe mit tput

Eine Alternative zu ANSI-Codes ist die Verwendung von tput Befehl:

$ tput setaf color_code

setf ermöglicht 8 Farben, während setaf erlaubt 256 Farben, also können Sie je nach verwendetem Befehl zwischen ihnen wechseln 0..7 und 0..255 wie die Farbcodes. Beide Befehle widmen 0..7 zu den gleichen Farbcodes, während mit setaf, 8..15 sind hochintensive Farben und 16..231 sind verschiedene Farbtöne der ersten 8, und 232..255 sind Graustufenfarben:

So ändern Sie die Ausgabefarbe von Echo in Linux PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
Kredit: Wikipedia

Schließlich tput ermöglicht es Ihnen auch, die Hintergrundfarbe zu ändern, Fett hinzuzufügen, die Intensität zu verringern usw. mit anderen Befehlen:

Textstile Befehle
Vordergrundfarbe setaf
Hintergrundfarbe setab
Kein Style sgv0
Fetter Text fett
Text mit geringer Intensität schwach
Text unterstreichen smul
Blinkender Text blinken
Umgekehrter Text Umdrehung

Lassen Sie uns ein weiteres Skript erstellen, das verwendet tput um die Ausgabefarbe zu ändern echo:

#!/bin/bash
YELLOW=`tput setaf 3`
echo "${YELLOW}Changing"
WHITE=`tput setaf 7 bold`
echo "${WHITE}Colors"
BLUE=`tput setaf 4 smul`
echo "${BLUE}With tput"
CYAN=`tput setaf 6 blink`
echo "${CYAN}is less"
RED=`tput setab 1 setaf 7`
echo "${RED}verbose!"

Dieses Skript gibt die folgende Ausgabe im Terminal aus:

So ändern Sie die Ausgabefarbe von Echo in Linux PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Der tput-Befehl bietet eine einfache Möglichkeit, jede Farbe über einen einfachen Farbcode zu drucken. Lassen Sie uns nun ein Skript erstellen, das jeden für den Befehl tput verfügbaren Farbcode drucken kann:

#!/bin/bash
tput init 
 end = $ (($ (tput colors) - 1)) 
 w = 1 
 for c
  in $ (seq 0 $end) 
  do
eval "$(printf " tput setaf % 3 s " " $c ")" 
      echo - n "$_" 
      [[$c - ge $ ((w * 2))]] 
      offset = 2 || offset = 0 
      [[$ (((c + offset) % (w - offset))) - eq $ (((w - offset) - 1))]] 
      echo 
 done 
 tput init

Es werden 0 bis 255 Farben und ihre Codes gedruckt:

So ändern Sie die Ausgabefarbe von Echo in Linux PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Zusammenfassung

In dieser kurzen Anleitung haben wir uns angesehen, wie Sie die Farbe von ändern können echo's-Ausgabe unter Linux – unter Verwendung von ANSI-Escape-Sequenzen und der tput Befehl.

Wir haben auch untersucht, wie Sie den Prozess mit Bash-Variablen weniger ausführlich gestalten, Hintergrundfarben optimieren und Text formatieren können.

Zeitstempel:

Mehr von Stapelmissbrauch