So ändern Sie die Bash -Eingabeaufforderung

So ändern Sie die Bash -Eingabeaufforderung

Die "Bash -Eingabeaufforderung" auf der Befehlszeilenschnittstelle ist das Textbit, das Ihren Befehlen vorausgeht. Es ist normalerweise der Benutzername, der vom Hostnamen der meisten Systeme gefolgt ist, sodass die Syntax so aussehen könnte user@linuxconfig $ Zum Beispiel. Es genügt zu sagen, dass die Standard -Bash -Befehlszeile für viele Linux -Systeme ziemlich minimal ist.

Wie wir in diesem Artikel sehen werden, kann es leicht geändert werden, indem die Bash geändert wird Ps n Variablen, und wir können Informationen wie Anzeigezeit, Lade, Anzahl von Benutzern mit dem System, der Verfügbarkeit und mehr aufnehmen. In diesem Tutorial sehen Sie, wie Sie Ihre Bash -Eingabeaufforderung mit Farben und zusätzlichen Informationen auf einem Linux -System aufbauen können.

In diesem Tutorial lernen Sie:

  • Was sind PS1- und PS2 -Shell -Variablen
  • So erstellen Sie benutzerdefinierte Shell -Eingabeaufforderungen
  • Mit welchen Zeichen können wir eine Shell -Eingabeaufforderung anpassen?
So ändern Sie die Bash -Eingabeaufforderung Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Jede Linux -Distribution
Software Bash Shell
Andere Minimale Kenntnis der Bash -Hülle. Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl.
Konventionen # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl
$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können

Bash -Eingabeaufforderung Variablen




Genau wie alles andere auf einem Linux -System kann auch die Bash -Eingabeaufforderung angepasst werden. Wir können die Aufgabe erfüllen, indem wir die Werte von Bash ändern PS1, PS2, PS3, Und PS4 Variablen. Um die Dinge einfach zu halten, wird sich dieser Artikel nur mit den ersten beiden befassen. Verwenden Sie das Echo Befehl, um ihre aktuellen Werte zu sehen:
$ echo "Bash PS1 Variable:" $ ps1 $ echo "Bash PS2 Variable:" $ PS2 
PS1 und PS2 Bash -Eingabeaufforderung

PS1 -Eingabeaufforderung Variable verprügeln

PS1 ist die primäre Eingabeaufforderungsvariable. Unsere ist derzeit:

\ [\ e] 0; \ u@\ h: \ w \ a \] $ debian_chroot:+($ debian_chroot) \ [\ 033 [01; 32m \] \ u@\ h \ [\ 033 [00m) \]: \ [\ 033 [01; 34m \] \ W \ [\ 033 [00m \] \ $ 

Dies sieht ein wenig verwirrend aus, da viele davon die Farben, die Sie im obigen Screenshot sehen. Das Mitnehmen hier ist die Verwendung der speziellen Bash -Charaktere \ u (Benutzer), \H (Hostname) und \ w (aktuelles Arbeitsverzeichnis). Diese Arten von Zeichen ermöglichen es uns, benutzerdefinierte Informationen anzuzeigen, die sich unter den Umständen in der Bash -Eingabeaufforderung ändern. Weitere von ihnen werden unten abgedeckt.

PS2 -Eingabeaufforderung Variable verprügeln

PS2 Die Bash -Shell -Variable ist die sekundäre Eingabeaufforderung und wird normalerweise auf >. Diese Eingabeaufforderung wird angezeigt, wenn die Shell auf eine Benutzereingabe wartet, beispielsweise wenn Sie Anführungszeichen verwenden und vergessen, sie zu schließen.

$ echo "Text mit fehlenden Zitaten> 
Linux Bash -Eingabeaufforderung Diagramm

Bash fordere Sonderzeichen verprügeln

Die Bash -Eingabeaufforderung kann mithilfe von Sonderzeichen angepasst werden. Hier ist ein kurzer Überblick über die am häufigsten verwendeten Zeichen und ihre Bedeutung:



Bash fordere Sonderzeichen verprügeln
Spezialcharakter verprügeln Erklärung des besonderen Charakters Spezialcharakter verprügeln Erklärung des besonderen Charakters
\A ein ASCII -Bell -Charakter (07) \D Das Datum im Format „Wochentage Monatsdatum“ (e.G., "Di 26. Mai")
\] Beenden Sie eine Abfolge nicht druckender Zeichen \ e ein ASCII -Fluchtcharakter (033)
\H Der Hostname bis zum ersten '.'' \H der Hostname
\J Die Anzahl der derzeit von der Shell verwalteten Jobs \ l Der Grundname des Klemmegerätenamens der Shell
\N Neue Zeile \R Wagenrückgabe
\S Der Name der Schale, der Grundname von 0 $ (der Teil nach dem Finale
Schrägstrich)
\T Die aktuelle Zeit im 24-Stunden-HH: MM: SS-Format
\T Die aktuelle Zeit im 12-Stunden-HH: MM: SS-Format \@ Die aktuelle Zeit im 12-Stunden-Format/PM-Format
\A Die aktuelle Zeit im 24-Stunden-HH: MM-Format \ u der Benutzername des aktuellen Benutzer
\ v Die Version von Bash (e.G., 2.00) \ V Die Veröffentlichung von Bash, Version + Patchelvel (e).G., 2.00.0)
\ w das aktuelle Arbeitsverzeichnis \ W Der Grundname des aktuellen Arbeitsverzeichnisses
\! Die Geschichte dieses Befehls \# Die Befehlsnummer dieses Befehls
\ $ Wenn die effektive UID 0 ist, eine #, sonst ein $ \ nnn das Charakter, der der Oktalzahl nnn entspricht
\\ ein Backslash \ [ Beginnen Sie eine Abfolge nicht druckender Zeichen, die zum Einbetten von a verwendet werden könnten
Terminalkontrollsequenz in die Eingabeaufforderung
\ D Format Das Format wird an Strftime (3) übergeben und das Ergebnis eingefügt
in die schnelle Zeichenfolge; Ein leeres Format führt zu einer landschemaspezifischen Zeit
Darstellung. Die Zahnspangen sind erforderlich

Schälen Sie die Anpassung der Eingabeaufforderung an

Nachdem sich ein Benutzer in das System anmeldet, werden die Variablen für die Benutzerumgebung aus verschiedenen Dateien initialisiert:

  • /etc/Profil oder /etc/bashrc (System breit)
  • ~/.bash_profile , ~/.Bash_login , ~/.Profil , ~/.bashrc oder ~/.Bash_logout (Benutzerspezifisch)
WUSSTEN SIE?
Es ist wichtig zu wissen, dass alle Benutzerumgebungsvariablen eine Lebensdauer haben. Wenn die Terminalsitzung geschlossen ist.

In den folgenden Abschnitten definieren wir zwei Variablen, um diese Aussage zu beweisen.

Anpassen der Bash -Variablen Schritt für Schritt Anweisungen

Wir werden jetzt die bearbeiten ~/.bashrc Konfigurationsdatei zum Anzeigen einer benutzerdefinierten Bash -Eingabeaufforderung. Wie oben erwähnt, müssen wir uns an unserer aktuellen Terminalsitzung abmelden und wieder anmelden, um die Änderungen zu bemerken, die wirksam werden, oder einfach die verwenden Quelle Befehl wie unten gezeigt.

  1. Verwenden Sie Nano oder einen anderen Texteditor, um die zu bearbeiten ~/.bashrc Datei. Alternativ können wir Echo Die neuen Shell -Eingabeaufforderungeinstellungen in die Datei.
    $ echo "ps1 = 'Meine neue Bash -Eingabeaufforderung@\\ t: \\ w \\ $'" >> ~/.bashrc 



  2. Lassen Sie die Änderungen mit den folgenden wirken Quelle Befehl.
    $ source ~/.bashrc 
  3. Sie sollten jetzt die neue Eingabeaufforderung sehen:
    Meine neue Bash -Eingabeaufforderung@16: 42: 58: ~ $ 
    Customized Bash Eingabeaufforderung unter Linux

Wechseln Sie Vordergrund- und Hintergrund -Bash -Schnellfarben

In der folgenden Tabelle finden Sie verschiedene Farben, mit denen die Bash -Shell -Eingabeaufforderung und den Vordergrund geändert wurde:

Farbe Vordergrundnummer Hintergrundnummer
Schwarz 30 40
Rot 31 41
Grün 32 42
Braun 33 43
Blau 34 44
Lila 35 45
Cyan 36 46
Hellgrau 37 47

Um die Farbe Ihrer Bash -Eingabeaufforderung zu ändern, wird die folgende Syntax verwendet:

exportieren ps1 = '\ [\ e [FARBCODEM \] [Beispiel] \ [\ e [0m \] $ ' 
  • \ e [ = Markiert den Beginn eines Farbmods
  • Colorm = Die gewünschte Farbnummer, gefolgt von M
  • \ e [0m = Markiert das Ende eines Farbmods

Einige Beispiele, die diese Syntax verwenden, können unten angezeigt werden.



Einheitliche Beispiele verprügeln

  1. Eine rote Bash -Eingabeaufforderung:
    exportieren ps1 = "\ e [31m [Beispiel] \ e [0m $" 
  2. Eine lila Bash -Eingabeaufforderung:
    Exportieren Sie PS1 = "\ e [35M [Beispiel] \ E [0M $" 
    Verschiedene Beispiele für Bash -Eingabeaufforderung unter Linux. Passen Sie nach Bedarf an, um Ihren Anforderungen zu entsprechen
  3. Zeigen Sie die aktuelle Zeit in der Bash -Eingabeaufforderung an:
    Exportieren Sie ps1 = "\ u@\ h \ t: \ $" 
  4. Diese Bash -Eingabeaufforderung zeigt die aktuelle Anzahl von Dateien und Verzeichnissen im aktuellen Verzeichnis an.
    exportieren ps1 = "\ u@\ h [\ $ (ls | wc -l)]: \ $" 

Gedanken schließen




In diesem Tutorial haben wir gesehen. Dies kann nicht nur dazu führen, dass unser Befehlszeilenterminal viel besser aussieht, sondern wir können auch Bashs Sonderzeichen verwenden, um viele nützliche Informationen anzuzeigen. Sie können einige unserer Beispiele an Ihre eigenen Bedürfnisse anpassen, damit Sie gleichzeitig eine gut aussehende Bash -Eingabeaufforderung mit einigen hilfreichen Informationen erhalten können.

Verwandte Linux -Tutorials:

  • So verwenden Sie den Befehl Uptime unter Linux
  • Wie oft müssen Sie Ihren Linux -Server neu starten??
  • Dinge zu installieren auf Ubuntu 20.04
  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • Mastering -Bash -Skriptschleifen beherrschen
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • Mint 20: Besser als Ubuntu und Microsoft Windows?
  • Hung Linux System? Wie man zur Befehlszeile entkommt und…
  • Grundlegende Linux -Befehle
  • So ändern Sie Hostname unter Linux