Metainformationen zur Seite
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
start:linux:terminal:bash-prompt [2020/07/23 20:45]
wikiadmin
start:linux:terminal:bash-prompt [2020/07/23 21:14] (aktuell)
wikiadmin
Zeile 1: Zeile 1:
-** !! Achtung noch Baustelle !!** 
 ====== Bash-Prompt anpassen ====== ====== Bash-Prompt anpassen ======
 [[https://wiki.archlinux.de/title/Bash-Prompt_anpassen|Wie lässt sich der Bash-Prompt anpassen?]] [[https://wiki.archlinux.de/title/Bash-Prompt_anpassen|Wie lässt sich der Bash-Prompt anpassen?]]
  
  
-Das Aussehen des Bash Promptes wird in der Variablen *PS1* in der Datei +Das Aussehen des Bash Promptes wird in der Variablen **PS1** in der Datei **~/.bashrc** festgelegt.
-*~/.bashrc* festgelegt.+
  
 === Aufbau von PS1 === === Aufbau von PS1 ===
Zeile 66: Zeile 64:
 zusammen: zusammen:
  
 +<code>
 PS1='[\u@\h \W]\$ ' PS1='[\u@\h \W]\$ '
 +</code>
  
 === 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, ob man gerade als 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, bis eine neue folgt. Die letzte angegebene Farbe ist die, in der auch die Benutzereingaben erfolgen.
-Beispiel hilfreich sein um optisch darauf hinzuweisen, ob man gerade als +
-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, bis eine neue folgt. Die letzte angegebene Farbe ist die, in +
-der auch die Benutzereingaben erfolgen. +
- +
-*Sequenz* *Farbe* +
-\[\033[0;30m\] schwarz +
-\[\033[1;30m\] dunkelgrau +
-\[\033[0;31m\] rot +
-\[\033[1;31m\] hellrot +
-\[\033[0;32m\] grün +
-\[\033[1;32m\] hellgrün +
-\[\033[0;33m\] braun +
-\[\033[1;33m\] gelb +
-\[\033[0;34m\] blau +
-\[\033[1;34m\] hellblau +
-\[\033[0;35m\] lila +
-\[\033[1;35m\] helles lila +
-\[\033[0;36m\] dunkles türkis +
-\[\033[1;36m\] türkis +
-\[\033[0;37m\] hellgrau +
-\[\033[1;37m\] weiß +
-\[\033[0m\] farblos (zurücksetzen auf default Farbe)+
  
 +^Sequenz  ^Farbe^
 +|\[\033[0;30m\] |schwarz|
 +|\[\033[1;30m\] |dunkelgrau|
 +|\[\033[0;31m\] |rot|
 +|\[\033[1;31m\] |hellrot|
 +|\[\033[0;32m\] |grün|
 +|\[\033[1;32m\] |hellgrün|
 +|\[\033[0;33m\] |braun|
 +|\[\033[1;33m\] |gelb|
 +|\[\033[0;34m\] |blau|
 +|\[\033[1;34m\] |hellblau|
 +|\[\033[0;35m\] |lila|
 +|\[\033[1;35m\] |helles lila|
 +|\[\033[0;36m\] |dunkles türkis|
 +|\[\033[1;36m\] |türkis|
 +|\[\033[0;37m\] |hellgrau|
 +|\[\033[1;37m\] |weiß|
 +|\[\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;XXm\] Schwarzer Hintergrund +|\[\033[40;XXm\] |Schwarzer Hintergrund| 
-\[\033[41;XXm\] Roter Hintergrund +|\[\033[41;XXm\] |Roter Hintergrund| 
-\[\033[42;XXm\] Grüner Hintergrund +|\[\033[42;XXm\] |Grüner Hintergrund| 
-\[\033[43;XXm\] Hellbrauner Hintergrund +|\[\033[43;XXm\] |Hellbrauner Hintergrund| 
-\[\033[44;XXm\] Blauer Hintergrund +|\[\033[44;XXm\] |Blauer Hintergrund| 
-\[\033[45;XXm\] Lila Hintergrund +|\[\033[45;XXm\] |Lila Hintergrund| 
-\[\033[46;XXm\] Türkiser Hintergrund +|\[\033[46;XXm\] |Türkiser Hintergrund| 
-\[\033[47;XXm\] Hellgrauer Hintergrund +|\[\033[47;XXm\] |Hellgrauer Hintergrund|
  
 === Position des Cursors === === Position des Cursors ===
Zeile 120: Zeile 109:
 Sequenz setzen: Sequenz setzen:
  
 +<code>
 \033[<line>;<column>f \033[<line>;<column>f
 +</code>
  
 Die aktuelle Position lässt sich mit der folgenden Sequenz sichern: Die aktuelle Position lässt sich mit der folgenden Sequenz sichern:
  
 +<code>
 \033[s \033[s
 +</code>
  
 Um die gespeicherte Position wiederherzustellen verwendet man die Sequenz Um die gespeicherte Position wiederherzustellen verwendet man die Sequenz
  
 +<code>
 \033[u \033[u
 +</code>
  
-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:+
  
 +<code>
 PS1=">\033[s\033[1;\$((COLUMNS-4))f\$(date +%H:%M)\033[u" PS1=">\033[s\033[1;\$((COLUMNS-4))f\$(date +%H:%M)\033[u"
 +</code>
  
-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. 
-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 //root/.bashrc/ kommt+In diesem Beispiel hellrot für Root und türkis für den User in die **//root/.bashrc/** kommt.
  
 +<code>
 PS1='[\[\033[1;31m\]\u\[\033[0m\]@\h \W]\$ ' PS1='[\[\033[1;31m\]\u\[\033[0m\]@\h \W]\$ '
 +</code>
  
-  * in die //home/user/.bashrc/+  * in die **//home/user/.bashrc/**
  
 +<code>
 PS1='[\[\033[1;36m\]\u\[\033[0m\]@\h \W]\$ ' PS1='[\[\033[1;36m\]\u\[\033[0m\]@\h \W]\$ '
 +</code>
  
 +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:+
  
 +<code>
 \u@\h $(if [[ $? == 0 ]]; then echo "✓"; else echo "✗"; fi) \w $  \u@\h $(if [[ $? == 0 ]]; then echo "✓"; else echo "✗"; fi) \w $ 
 +</code>
  
 und ergeben diesen Bash Prompt: und ergeben diesen Bash Prompt:
  
 +<code>
 user@host ✓ ~ $ true user@host ✓ ~ $ true
 user@host ✓ ~ $ false user@host ✓ ~ $ false
 user@host ✗ ~ $ true user@host ✗ ~ $ true
 user@host ✓ ~ $  user@host ✓ ~ $ 
 +</code>
  
-Die Idee und Motivation zu diesem Kapitel sowie weitere Beispiele hierzu +Die Idee und Motivation zu diesem Kapitel sowie weitere Beispiele hierzu finden sich [[https://wiki.archlinux.org/index.php/Color_Bash_Prompt#Return_value_visualisation|im Arch-Linux Artikeln über die Bash]].
-finden sich im Sprache en.png +
-<https://wiki.archlinux.de/title/Datei:Sprache_en.png> englischen +
-ArchWiki Artikel "Color Bash Prompt" +
-<https://wiki.archlinux.org/index.php/Color_Bash_Prompt#Return_value_visualisation>. +
  
  
 === Siehe auch === === Siehe auch ===
  
-  * Bash-Completion <https://wiki.archlinux.de/title/Bash-Completion> +[[https://wiki.archlinux.de/title/Bash-Completion | Bash-Completion]] 
-  * .bashrc <https://wiki.archlinux.de/title/Bashrc>+[[https://wiki.archlinux.de/title/Bashrc | .bashrc ]]
  
  
Zeile 193: Zeile 183:
  
 Bash Prompt HOWTO und Beispiele <http://gilesorr.com/bashprompt/> Bash Prompt HOWTO und Beispiele <http://gilesorr.com/bashprompt/>
 +
 Sprache en.png <https://wiki.archlinux.de/title/Datei:Sprache_en.png> Sprache en.png <https://wiki.archlinux.de/title/Datei:Sprache_en.png>
  
-Dieser Artikel (oder Teile davon) steht unter GNU FDL +Dieser Artikel (oder Teile davon) steht unter GNU FDL <http://wiki.archlinux.de/?title=GNU_Free_Documentation_License> (GNUFreie Dokumentationslizenz) und ist eine Kopie aus dem Ubuntuusers.de 
-<http://wiki.archlinux.de/?title=GNU_Free_Documentation_License> (GNU + 
-Freie Dokumentationslizenz) und ist eine Kopie aus dem Ubuntuusers.de +Wiki <http://wiki.ubuntuusers.de/>. Am Original-Artikel <http://wiki.ubuntuusers.de/Bash/Prompt> kann jeder Korrekturen und Ergänzungen vornehmen. Im Ubuntuusers.de Wiki ist eine Liste der Autoren <http://wiki.ubuntuusers.de/Bash/Prompt&action=history> verfügbar.
-Wiki <http://wiki.ubuntuusers.de/>. Am Original-Artikel +
-<http://wiki.ubuntuusers.de/Bash/Prompt> kann jeder Korrekturen und +
-Ergänzungen vornehmen. Im Ubuntuusers.de Wiki ist eine Liste der Autoren +
-<http://wiki.ubuntuusers.de/Bash/Prompt&action=history> verfügbar. +
-Abgerufen von +
-„https://wiki.archlinux.de/index.php?title=Bash-Prompt_anpassen&oldid=19708 +
-<https://wiki.archlinux.de/index.php?title=Bash-Prompt_anpassen&oldid=19708>“ +
-Kategorie <https://wiki.archlinux.de/title/Spezial:Kategorien>:+
  
-  * Konsole <https://wiki.archlinux.de/title/Kategorie:Konsole>+Abgerufen von „https://wiki.archlinux.de/index.php?title=Bash-Prompt_anpassen&oldid=19708 <https://wiki.archlinux.de/index.php?title=Bash-Prompt_anpassen&oldid=19708>“ Kategorie <https://wiki.archlinux.de/title/Spezial:Kategorien>: 
 +Konsole <https://wiki.archlinux.de/title/Kategorie:Konsole>