Weihnachtsbaum in der Kommandozeile

Bald ist Neujahr, da möchte man nicht an ernste Arbeit denken.

Alle versuchen, etwas fĂŒr die Feiertage zu dekorieren: das Zuhause, das BĂŒro, den Arbeitsplatz
 Lassen Sie uns auch etwas verschönern! Zum Beispiel die Kommandozeile. In gewisser Weise ist die Kommandozeile auch ein Arbeitsplatz.

In einigen Distributionen ist sie bereits „geschmĂŒckt“:

Weihnachtsbaum in der Kommandozeile

In anderen ist sie grau und unauffÀllig:

Weihnachtsbaum in der Kommandozeile

Und wir können es zum Beispiel so machen:

Weihnachtsbaum in der Kommandozeile

NatĂŒrlich sind die GeschmĂ€cker verschieden. Wenn Ihnen diese Art der Dekoration zu grell und unpassend erscheint, dann wissen Sie, dass diese Meinung durchaus legitim ist. Aber wenn auch Sie ein wenig Weihnachtsstimmung hinzufĂŒgen möchten, lesen Sie weiter einen kleinen Neujahrsartikel von Cloud4Y.

ZunĂ€chst erklĂ€re ich, wie die Ausgabe des Terminals „geschmĂŒckt“ wird. Dies geschieht mit Hilfe von Escape-Sequenzen. Genauer gesagt, mit Steuersequenzen des ANSI/VT100-Terminals. Das bedeutet automatisch, dass Ihr Terminalemulator diesen Standard unterstĂŒtzen muss, andernfalls wird das Weihnachtswunder nicht stattfinden. Und ja, es wird vorausgesetzt, dass $SHELL bei Ihnen bash ist.

Escape-Sequenzen werden so genannt, weil sie jeweils mit dem ASCII-Zeichen „Escape“ beginnen. Es gibt viele Steuersequenzen, die es ermöglichen, beispielsweise die Terminaleinstellungen anzuzeigen, die Anzeige und Bewegung des Cursors zu steuern, die Schriftart zu Ă€ndern sowie Text zu löschen und auszublenden. Aus der Vielzahl der Möglichkeiten wĂ€hlen wir eine – die Änderung der Text- und Hintergrundfarbe.

FĂŒhren Sie die Steuersequenz aus *ESC*[{attr1};...;{attrn}m
Als Zeichen Escape wird seine oktale Form verwendet, also 33. Hier ist eine kurze Übersicht möglicher Attributwerte:

0 Alle Attribute zurĂŒcksetzen
1 Helligkeit (erhöhte Helligkeit)
2 Dim (gedÀmpft)
4 Unterstrichen
5 Blinken
7 Umkehren
8 Ausblenden

Vordergrundfarben (Farbe der Schrift, in dieser Farbe wird der Text angezeigt):
30 Schwarz
31 Rot
32 GrĂŒn
33 Gelb
34 Blau
35 Magenta
36 Cyan
37 Weiß

Hintergrundfarben (Farbe des Papiers oder des Hintergrunds):
40 Schwarz
41 Rot
42 GrĂŒn
43 Gelb
44 Blau
45 Magenta
46 Cyan
47 Weiß

Bitte beachten Sie, wenn Sie jetzt im Terminal den Befehl eingeben: echo 33[0;31mmancher Text 33[0m’


 erhalten Sie erwartungsgemĂ€ĂŸ eine monochrome Mischung:

Weihnachtsbaum in der Kommandozeile

Warum? Weil die erweiterten Funktionen des echo-Befehls genutzt werden sollten. Es reicht, einen kleinen Parameter hinzuzufĂŒgen: echo -e '33[0;31mSome text 33[0m'

Jetzt wird die Ausgabe korrekt aussehen:

Weihnachtsbaum in der Kommandozeile

Wir haben das FÀrben der Terminalausgaben verstanden. Lassen Sie uns nun schauen, wie wir die Eingabeaufforderung farblich gestalten können.

Dies erfolgt durch die Anpassung der PS1-Variablen. Diese Variable bestimmt das Aussehen der Eingabeaufforderung. Ihr Aussehen kann ebenfalls verĂ€ndert werden, unter anderem durch Escape-Sequenzen. Aber es gibt einen kleinen Unterschied: Die Sequenz muss mit dem Zeichen „ beginnen,[und mit dem Zeichen „ enden, sonst wird sie auf dem Terminal ausgegeben.]”, sonst wird sie auf das Terminal ausgegeben.

Alle möglichen Befehlsfolgen sind im Bash-Handbuch detailliert beschrieben, daher empfehle ich den Lesern, selbst zu wÀhlen, was sie in der Eingabeaufforderung lieber sehen. Als Beispiel nenne ich meinen PS1-Variablenwert:

[ 33[34;1m]t[ 33[0m],[ 33[32m]u@l@h[ 33[0m]:[ 33[33m]W[ 33[0m],[ 33
[31m]![ 33[0m]$n

Ich ĂŒbersetze diesen gruseligen Zauberspruch:

[ 33[34;1m] — aktiviert die hellblaue (zweiter Attribut) Schriftfarbe
t – gibt die aktuelle Zeit im Format HH:MM:SS aus
[ 33[0m] – setzt die Schriftfarbe zurĂŒck
, — einfach ein Komma (ĂŒberraschend, oder?)
[ 33[32m] — grĂŒnen Schriftfarbe aktivieren
u@l@h – zeigt den Benutzernamen, die Terminalnummer und den Kurzhostnamen an, getrennt durch das Zeichen “@”
[ 33[0m] — Schriftfarbe wieder zurĂŒcksetzen
: — einfach ein Doppelpunkt (plötzlich!)
[ 33[33m] — gelbe Schriftfarbe aktivieren
W – zeigt das aktuelle Verzeichnis an
[ 33[0m] — Schriftfarbe erneut zurĂŒcksetzen
, — noch ein Komma (wer hĂ€tte das gedacht!)
[ 33[31m] — rote Schriftfarbe aktivieren
! — zeigt die Befehlsnummer im Terminal an
[ 33[0m] — vergessen Sie nicht, die Schriftfarbe zurĂŒckzusetzen
$ — zeigt “#” fĂŒr root und “$” fĂŒr alle anderen an
n – Zeilenumbruch. Warum? Damit der Befehl am linken Rand des Fensters beginnt, und nicht an der Stelle des Ende der Eingabeaufforderung.

Wo sollte die Variable ĂŒberschrieben werden? Am logischsten ist es, dies in ~/ .bashrc zu tun.

Das Aussehen der Eingabeaufforderung ist nur durch Ihre Fantasie begrenzt. GrundsĂ€tzlich steht Ihnen nichts im Wege, um mit dem oben beschriebenen Werkzeug eine Eingabeaufforderung in Form eines Weihnachtsbaum zu erstellen. Allerdings wird eine solche Eingabeaufforderung sehr unhandlich sein, und die Arbeit wird dadurch nicht einfacher. Der Baum kann einfach ĂŒber der Eingabeaufforderung beim Login angezeigt werden (wir mĂŒssen sowieso ~/.bashrc bearbeiten). Trauen Sie sich! Und vielen Dank fĂŒr Ihre Aufmerksamkeit.

Weihnachtsbaum in der Kommandozeile

Was gibt es sonst noch Interessantes im Blog zu lesen? Cloud4Y

→ Top in GNU/Linux konfigurieren
→ Pentester an der Front der Cybersicherheit
→ Startups, die ĂŒberraschen können
→ Braucht ein Rechenzentrum Kissen?
→ Das Haus, das der Roboter gebaut hat

Abonnieren Sie unseren Telegram-Kanal, um keinen Artikel zu verpassen! Wir schreiben nicht hĂ€ufiger als zweimal pro Woche und nur zu relevanten Themen. Auch möchten wir daran erinnern, dass der Unternehmens-Cloud-Anbieter Cloud4Y eine Aktion gestartet hat: „Cloud FZ-152 zum Preis des Gewöhnlichen“. AntrĂ€ge können bis 31. Dezember.

Quelle: habr.com

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster