
Wenn Ihr Informationen im Terminal ausgeben wollt, muss das nicht langweilig und "schwarz-weiß" sein. Das könnte interessant sein, wenn Ihr längere Skript-Ausgaben nutzt, Texte von einem Server abruft, Hilfe zu Tools anbieten oder auch einfach einen hübscheren Screenshot machen wollt.
Farben und Kunst
Zum Gestalten des Outputs könnt Ihr vor allem zwei Dinge nutzen: ASCII-Art und Sonderzeichen für eine hübsche Formatierung und Farben sowie weitere Formatierungen des Texts. Der ASCII-Art-Teil ist dabei ziemlich trivial und nur ein ganz kurzer Tipp und daher ganz am Ende als letzter Punkt zu finden. Hier aber erstmal ein simples Beispiel:

Bei den Font-Formatierungen sieht es anders aus: Wir zeigen Euch hier zwei grundsätzlich verschiedene Varianten mit Vor- und Nachteilen. Variante 1: Über ANSI-Escape-Sequenzen werden im Terminal Formatierungen gesetzt. Variante 2: Ein spezielles Tool (tput) setzt die Formatierung.
Vorteil der ANSI-Variante: Minimalistisch, einfachster Aufruf und wenn etwas nicht funktioniert, wird der Inhalt dennoch ausgegeben - dann eben mit Steuerzeichen.
Nachteil der ANSI-Variante: Grauenhafte Syntax - mit Varianten.
Vorteil der Tput-Variante: Hübschere Syntax, flexibler und in Standardsystemen vermutlich auch zuverlässiger.
Nachteil der Tput-Variante: Tput möglicherweise beim Nutzer nicht vorhanden und entweder ist der Aufruf komplexer oder es wird ein extra Client benötigt.
Und damit Ihr seht, was mit schwierigerem Aufruf gemeint ist, so werden die Aufrufe später aussehen:
ANSI: curl example.com/foobar
Tput: curl example.com/foobar | sh
Im folgenden Beispiel seht Ihr die Lösungen für eine simple Textdatei, die per curl von einem Server abgerufen wird. Die Screenshots stammen alle aus Git Bash für Windows, in der Linux-Bash und anderen Terminalemulatoren sieht es aber weitestgehend genauso aus.
Variante 1: ANSI
Eine ANSI-Escape-Sequenz ist eine Sequenz von Zeichen, die der Terminal als Anweisung versteht, das Folgende auszuführen - bis zum Ende-der-Sequenz-Zeichen. Leider gibt es mehrere Escape-Sequenzen, was das Ganze etwas verwirrender macht, aber im Grunde ist es ganz simpel. Hier ein Beispiel:
ESC[ARGUMENTEm
Die Sequenz beginnt also mit ESC[, wobei damit nicht die Zeichenkette e-s-c gemeint ist, sondern das Unicode-Sonderzeichen ESC. Das könnt Ihr in den meisten Editoren über Zeichentabellen setzen oder unter Linux auch über den Hex-Code: STRG+ALT+U 1B ENTER. Die Sequenz schließt immer mit m.

Und jetzt mal roter Text:
ESC[31m
Fetter Text:
ESC[1m
Text auf grünem Hintergrund:
ESC[42m
Roter, fetter Text auf grünem Hintergrund:
ESC[31;1;42m
Ihr erkennt das Muster: Die Zahlen in den 30ern geben die Vordergrundfarbe an, die in den 40er die Hintergrundfarbe und die 2 steht für die Fettung. Die Reihenfolge dieser Zahlen spielt keine Rolle.
Eine Übersicht der Codes und Sequenzen gibt's bei Wikipedia.
Hier ein kurzes Praxisbeispiel für eine Datei test.txt:
Standard-Text: Hallo Welt
ESC[31m Roter Text: Hallo Welt
ESC[34;3m Blauer, kursiver Text: Hallo Welt
ESC[0m Alle Effekte wieder deaktiviert
Achtet auf das ESC[0m - mit der 0 wird alles wieder auf Null gesetzt, sprich, die Effekte verschwinden.
Wenn Ihr diese Datei nun local via cat oder über einen Server und curl ausgebt, seht Ihr das Ergebnis:
cat test.txt
curl example.com/test.txt

Alternative: Als Escape-Sequenz könnt Ihr auch
\e[ARGUMENTEm
verwenden. Allerdings funktioniert das zwar mit cat, aber nicht mit curl. Bei curl müsstet Ihr den Output umleiten:
curl example.com/test.txt | xargs -0 -I {} printf "{}"
Da müsst Ihr schauen, was Euch lieber ist: Einfacherer Aufruf oder einfacheres Schreiben.
Variante 2: Tput
Wenn Euch das Alles nicht gefällt: Tput ist genau für Euch und diesen Zweck gedacht. Eigentlich ist Tput auch in den meisten Linuxen vorhanden, aber eigentlich bringt eben keine Sicherheit. Dafür ist der Code wesentlich lesbarer - hier mal obiges Beispiel per Tput:
echo Standard-Text: Hallo Welt
tput setaf 1
echo Roter Text: Hallo Welt
tput setaf 4 bold
echo Blauer, fetter Text: Hallo Welt
tput sgr0
echo Alle Effekte wieder deaktiviert
Und der Aufruf wäre dann:
curl example.com/test.txt | sh
Mit anderen Worten: Statt eines reinen Texts mit Auszeichnungen habt Ihr ein echtes, schlankes Skript, das heruntergeladen und dann per sh von der Shell ausgeführt wird.

Bei tput setzt setaf die Vordergrundfarbe, setab die Hintergrundfarbe, bold die Fettung und sgr0 entfernt wieder alle Effekte. Eine ganz hübsche Übersicht findet Ihr hier.
ASCII-Art
In den 80er war ASCII-Art noch wichtig: In einer Computer-Welt ohne echt Bilder, wurden die Nackedeis noch auf Endlospapier per ASCII-Art ausgedruckt - da blieb zumindest mehr für die Vorstellungskraft übrig. Heute gibt es ganze Star-Wars-Filme als ASCII-Stream.
Aber es ist auch ein einfaches Mittel, um ein wenig "Grafik-Eindruck" in den Terminal zu bringen. Nutzt einfach einen Onlinedienst wie ascii-art-generator.org: Ihr gebt Euren Text oder ein Bild ein ...

... und der Service spuckt die ASCII-Art-Version aus, die Ihr einfach kopieren oder als Textdatei herunterladen könnt. Übrigens: Ihr könnt hier auch das ANSI-Format wählen, dann habt Ihr eine Datei nach der obigen Variante 1.

Darüber hinaus bieten sich Rahmen aus # an - das hat sich einfach etabliert. Und natürlich könnt Ihr ASCII-Art und Rahmen ebenfalls farbig per tput oder Escape-Sequenz bauen. Tipp: Nutz Leerzeichen, keine Tabs - das geht regelmäßig daneben.
In Kombination könnt Ihr dann ziemlich gut lesbare Texte/Ausgaben erzeugen - nochmal das Beispiel vom Anfang:

P.S.: Ich bin kein Designer, hier ging's um Technik - das geht mit Sicherheit hübschererer ...