Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste Überarbeitung Beide Seiten der Revision | ||
start:linux:terminal:bash-prompt [2020/07/23 20:37] wikiadmin |
start:linux:terminal:bash-prompt [2020/07/23 21:02] wikiadmin |
||
---|---|---|---|
Zeile 33: | Zeile 33: | ||
- | ^Variable^ ^Ausgabe^ | + | ^Variable ^Ausgabe^ |
- | \a das ASCII bell Zeichen (07) | + | |\a |das ASCII bell Zeichen (07)| |
- | \A Uhrzeit im 24-Stunden Format (hh:mm) | + | |\A |Uhrzeit im 24-Stunden Format (hh:mm)| |
- | \d Datum im Format " | + | |\d |Datum im Format " |
- | \e das ASCII Escape Zeichen (033) | + | |\e |das ASCII Escape Zeichen (033)| |
- | \h Hostname auf dem die Shell läuft; bis zum ersten " | + | |\h |Hostname auf dem die Shell läuft; bis zum ersten " |
- | \H Hostname komplett | + | |\H |Hostname komplett| |
- | \j Anzahl der Jobs der Shell | + | |\j |Anzahl der Jobs der Shell| |
- | \l Das tty auf dem die Shell läuft | + | |\l |Das tty auf dem die Shell läuft| |
- | \n neue Zeile | + | |\n |neue Zeile| |
- | \t Uhrzeit im 24h Format (hh: | + | |\t |Uhrzeit im 24h Format (hh:mm:ss)| |
- | \T Uhrzeit im 12h Format (hh: | + | |\T |Uhrzeit im 12h Format (hh:mm:ss)| |
- | \r carriage return | + | |\r |carriage return| |
- | \s Name der verwendeten Shell (sh, bash, ...) | + | |\s |Name der verwendeten Shell (sh, bash, ...)| |
- | \u Username | + | |\u |Username| |
- | \v Version der Shell | + | |\v |Version der Shell| |
- | \V Release der bash (Version, Patchlevel) | + | |\V |Release der bash (Version, Patchlevel)| |
- | \w aktuelles Arbeitsverzeichnis | + | |\w |aktuelles Arbeitsverzeichnis| |
- | \W letzter Teil des aktuellen Arbeitsverzeichnisses | + | |\W |letzter Teil des aktuellen Arbeitsverzeichnisses| |
- | \! Aktuelle History-Nummer | + | |\! |Aktuelle History-Nummer| |
- | \# Aktuelle Befehls-Nummer | + | |\# |Aktuelle Befehls-Nummer| |
- | \$ Wenn root eine "#", | + | |\$ |Wenn root eine "#", |
- | \\ Backslash | + | |%%\\%% |Backslash| |
- | \nnn Zeichen entsprechend der oktalen Zahl nnn | + | |\nnn |Zeichen entsprechend der oktalen Zahl nnn| |
- | \[ Beginn einer Seqenz von nicht-darstellbaren Zeichen | + | |\[ |Beginn einer Seqenz von nicht-darstellbaren Zeichen| |
- | \] Ende einer Seqenz von nicht-darstellbaren Zeichen | + | |\] |Ende einer Seqenz von nicht-darstellbaren Zeichen| |
- | \@ Uhrzeit im 12h am/pm Format | + | |\@ |Uhrzeit im 12h am/pm Format| |
Zeile 66: | Zeile 66: | ||
zusammen: | zusammen: | ||
+ | < | ||
PS1=' | PS1=' | ||
+ | </ | ||
=== Farben === | === Farben === | ||
- | Es ist auch möglich das Bash Prompt Farbig zu gestalten. Das kann zum | + | Es ist auch möglich das Bash Prompt Farbig zu gestalten. Das kann zum Beispiel hilfreich sein um optisch darauf hinzuweisen, |
- | Beispiel hilfreich sein um optisch darauf hinzuweisen, | + | |
- | Root oder normaler User arbeitet (siehe Beispiel weiter unten). Um | + | |
- | Interpretationsfehler seitens der Shell bei den Farben zu vermeiden, | + | |
- | werden sie durch \[ am Anfang und \] am Ende begrenzt. In dieser | + | |
- | Eingrenzung werden Terminal-Kontroll-Sequenzen angegeben, welche mit | + | |
- | \033[ beginnen und auf m enden. Eine Farbdefinition behält solange ihre | + | |
- | Gültigkeit, | + | |
- | der auch die Benutzereingaben erfolgen. | + | |
- | + | ||
- | *Sequenz* *Farbe* | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0; | + | |
- | \[\033[1; | + | |
- | \[\033[0m\] farblos (zurücksetzen auf default Farbe) | + | |
+ | ^Sequenz | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0; | ||
+ | |\[\033[1; | ||
+ | |\[\033[0m\] |farblos (zurücksetzen auf default Farbe)| | ||
Mit den folgenden Sequenzen kann man die Hintergrundfarbe setzen: | Mit den folgenden Sequenzen kann man die Hintergrundfarbe setzen: | ||
- | *Sequenz* *Hintergrundfarbe* | + | ^Sequenz ^Hintergrundfarbe^ |
- | \[\033[XXm\] Keine Hintergrundfarbe | + | |\[\033[XXm\] |Keine Hintergrundfarbe| |
- | \[\033[40; | + | |\[\033[40; |
- | \[\033[41; | + | |\[\033[41; |
- | \[\033[42; | + | |\[\033[42; |
- | \[\033[43; | + | |\[\033[43; |
- | \[\033[44; | + | |\[\033[44; |
- | \[\033[45; | + | |\[\033[45; |
- | \[\033[46; | + | |\[\033[46; |
- | \[\033[47; | + | |\[\033[47; |
=== Position des Cursors === | === Position des Cursors === | ||
Zeile 120: | Zeile 111: | ||
Sequenz setzen: | Sequenz setzen: | ||
+ | < | ||
\033[< | \033[< | ||
+ | </ | ||
Die aktuelle Position lässt sich mit der folgenden Sequenz sichern: | Die aktuelle Position lässt sich mit der folgenden Sequenz sichern: | ||
+ | < | ||
\033[s | \033[s | ||
+ | </ | ||
Um die gespeicherte Position wiederherzustellen verwendet man die Sequenz | Um die gespeicherte Position wiederherzustellen verwendet man die Sequenz | ||
+ | < | ||
\033[u | \033[u | ||
+ | </ | ||
- | Im folgenden Beispiel wird die aktuelle Zeit in der rechten oberen Ecke | + | Im folgenden Beispiel wird die aktuelle Zeit in der rechten oberen Ecke des Terminals angezeigt: |
- | des Terminals angezeigt: | + | |
+ | < | ||
PS1="> | PS1="> | ||
+ | </ | ||
- | Die Umgebungsvariable COLUMNS enthält die Anzahl der Spalten des | + | Die Umgebungsvariable COLUMNS enthält die Anzahl der Spalten des Terminals. Im obigen Beispiel wird von diesem Wert 4 abgezogen, um die fünfstellige Ausgabe von /date/ am rechten Rand zu platzieren. |
- | Terminals. Im obigen Beispiel wird von diesem Wert 4 abgezogen, um die | + | |
- | fünfstellige Ausgabe von /date/ am rechten Rand zu platzieren. | + | |
=== Beispiel === | === Beispiel === | ||
- | Zur besseren Unterscheidung ob man gerade als Root oder normaler User | + | Zur besseren Unterscheidung ob man gerade als Root oder normaler User arbeitet könnte man das Standard Arch Prompt z. B. so verändern, dass der Username farbig dargestellt wird. In diesem Beispiel hellrot für Root und türkis für den User. |
- | arbeitet könnte man das Standard Arch Prompt z. B. so verändern, dass | + | |
- | der Username farbig dargestellt wird. In diesem Beispiel hellrot für | + | |
- | Root und türkis für den User. | + | |
* in die // | * in die // | ||
+ | < | ||
PS1=' | PS1=' | ||
+ | </ | ||
* in die // | * in die // | ||
+ | < | ||
PS1=' | PS1=' | ||
+ | </ | ||
+ | Rückgabewerte von Bash Kommandos im Bash Prompt visualisieren. | ||
- | Rückgabewerte von Bash Kommandos im Bash Prompt visualisieren | + | Um den Rückgabewert des letzten Bash Kommandos im Prompt zu visualisieren stehen zum Beispiel die Unicode Symbole |
- | + | ||
- | Um den Rückgabewert des letzten Bash Kommandos im Prompt zu | + | |
- | visualisieren stehen zum Beispiel die Unicode Symbole | + | |
* ✓ für einen erfolgreichen Rückgabewert | * ✓ für einen erfolgreichen Rückgabewert | ||
* ✗ für einen fehlerhaften Rückgabewert | * ✗ für einen fehlerhaften Rückgabewert | ||
- | zur Verfügung. In dieser Beispielkonfiguration werden diese zwei Unicode | + | zur Verfügung. In dieser Beispielkonfiguration werden diese zwei Unicode Symbole verwendet: |
- | Symbole verwendet: | + | |
+ | < | ||
\u@\h $(if [[ $? == 0 ]]; then echo " | \u@\h $(if [[ $? == 0 ]]; then echo " | ||
+ | </ | ||
und ergeben diesen Bash Prompt: | und ergeben diesen Bash Prompt: | ||
+ | < | ||
user@host ✓ ~ $ true | user@host ✓ ~ $ true | ||
user@host ✓ ~ $ false | user@host ✓ ~ $ false | ||
user@host ✗ ~ $ true | user@host ✗ ~ $ true | ||
user@host ✓ ~ $ | user@host ✓ ~ $ | ||
+ | </ | ||
+ | |||
+ | Die Idee und Motivation zu diesem Kapitel sowie weitere Beispiele hierzu finden sich im Sprache en.png < | ||
- | Die Idee und Motivation zu diesem Kapitel sowie weitere Beispiele hierzu | ||
- | finden sich im Sprache en.png | ||
- | < | ||
- | ArchWiki Artikel "Color Bash Prompt" | ||
< | < | ||