GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So passen Sie Bash-Farben und -Inhalte in der Linux-Terminal-Eingabeaufforderung an

Heute ist Bash die Standard-Shell in den meisten (wenn nicht allen) modernen Linux-Distributionen. Möglicherweise haben Sie jedoch bemerkt, dass die Textfarbe im Terminal und der Inhalt der Eingabeaufforderung von einer Distribution zur anderen unterschiedlich sein können.

Empfohlener Text: Die 5 am häufigsten verwendeten Open-Source-Shells für Linux

Falls Sie sich gefragt haben, wie Sie dies für eine bessere Zugänglichkeit oder aus einer Laune heraus anpassen können, lesen Sie weiter – in diesem Artikel erklären wir, wie genau das geht.

Die PS1-Bash-Umgebungsvariable

Die Eingabeaufforderung und das Erscheinungsbild des Terminals werden durch eine Umgebungsvariable namens PS1 geregelt . Laut Bash Manpage, PS1 stellt die primäre Eingabeaufforderungszeichenfolge dar, die angezeigt wird, wenn die Shell bereit ist, einen Befehl zu lesen.

Der erlaubte Inhalt in PS1 besteht aus mehreren durch Backslashs maskierten Sonderzeichen, deren Bedeutung in der AUFFORDERUNG aufgeführt ist Abschnitt der Manpage.

Lassen Sie uns zur Veranschaulichung den aktuellen Inhalt von PS1 anzeigen in unserem System (dies kann in Ihrem Fall etwas anders sein):

$ echo $PS1

[\[email protected]\h \W]$

Wir werden nun erklären, wie man PS1 anpasst nach unseren Bedürfnissen.

Anpassen des PS1-Formats

Gemäß dem PROMPTING-Abschnitt in der Manpage ist dies die Bedeutung jedes Sonderzeichens:

  1. \u: der Nutzername des aktuellen Benutzers.
  2. \h: der Hostname bis zum ersten Punkt (.) im vollständig qualifizierten Domänennamen.
  3. \W: der Basisname des aktuellen Arbeitsverzeichnisses mit $HOME mit einer Tilde (~) abgekürzt .
  4. \$: Wenn der aktuelle Benutzer root ist, zeigen Sie # an , $ ansonsten.

Beispielsweise sollten wir erwägen, \! hinzuzufügen Wenn wir die Verlaufsnummer des aktuellen Befehls anzeigen möchten, oder \H wenn wir den FQDN anstelle des kurzen Servernamens anzeigen möchten.

Im folgenden Beispiel importieren wir beide in unsere aktuelle Umgebung, indem wir diesen Befehl ausführen:

PS1="[\[email protected]\H \W \!]$"

Wenn Sie Enter drücken Sie werden sehen, dass sich der Inhalt der Eingabeaufforderung wie unten gezeigt ändert. Vergleichen Sie die Eingabeaufforderung vor und nach der Ausführung des obigen Befehls:

Gehen wir nun noch einen Schritt weiter und ändern die Farbe des Benutzers und Hostname in der Eingabeaufforderung – sowohl der Text als auch der umgebende Hintergrund.

Tatsächlich können wir 3 Aspekte der Eingabeaufforderung anpassen:

Textformat Vordergrundfarbe (Text) Hintergrundfarbe
0:normaler Text 30:Schwarz 40:Schwarz
1:fett 31:Rot 41:Rot
4:Unterstrichener Text 32:Grün 42:Grün
33:Gelb 43:Gelb
34:Blau 44:Blau
35:Lila 45:Lila
36:Cyan 46:Cyan
37:Weiß 47:Weiß

Wir werden den \e verwenden Sonderzeichen am Anfang und ein m am Ende, um anzuzeigen, dass das Folgende eine Farbsequenz ist.

In dieser Reihenfolge werden die drei Werte (Hintergrund , Format und Vordergrund ) werden durch Kommas getrennt (wenn kein Wert angegeben wird, wird der Standard angenommen).

Empfohlener Text: Erfahren Sie mehr über Bash-Shell-Skripting unter Linux

Da die Wertebereiche unterschiedlich sind, spielt es auch keine Rolle, welcher (Hintergrund , Format , oder Vordergrund ) geben Sie zuerst an.

Zum Beispiel der folgende PS1 bewirkt, dass die Eingabeaufforderung gelb angezeigt wird unterstrichener Text mit rot Hintergrund:

PS1="\e[41;4;33m[\[email protected]\h \W]$ "

So gut es aussieht, gilt diese Anpassung nur für die aktuelle Benutzersitzung. Wenn Sie Ihr Terminal schließen oder die Sitzung verlassen, gehen die Änderungen verloren.

Um diese Änderungen dauerhaft zu machen, müssen Sie die folgende Zeile zu ~/.bashrc hinzufügen oder ~/.bash_profile abhängig von Ihrer Distribution:

PS1="\e[41;4;33m[\[email protected]\h \W]$ "

Spielen Sie ruhig mit den Farben herum, um herauszufinden, was für Sie am besten funktioniert.

Zusammenfassung

In diesem Artikel haben wir erklärt, wie Sie die Farbe und den Inhalt Ihrer Bash-Eingabeaufforderung anpassen können. Wenn Sie Fragen oder Anregungen zu diesem Beitrag haben, können Sie gerne das unten stehende Kommentarformular verwenden, um uns zu erreichen. Wir freuen uns darauf, von Ihnen zu hören!


Linux
  1. Wie ich Funktionen und Leistung in meinem Linux-Terminal ausbalanciere

  2. So starten Sie den Linux-Befehl im Hintergrund und trennen den Prozess im Terminal

  3. So machen Sie Ihr Linux-Terminal und Ihre Shell weihnachtlich

  4. Wie kürze ich die Bash-Eingabeaufforderung unter Linux?

  5. So vergrößern und verkleinern Sie die Terminalkonsole unter Linux

So installieren und verwenden Sie das Terminator-Terminal unter Linux

So kopieren Sie Dateien und Verzeichnisse im Linux-Terminal

So löschen Sie den Bash-Verlauf in Linux und Mac

Bash-Skripting:So geben Sie Text in der Linux-Shell aus und formatieren ihn

So passen Sie Ihre Ubuntu-Terminal-Eingabeaufforderung an

Die 30 besten Linux-Terminalemulatoren und Bash-Editoren