Wie bekomme ich einen farbigen Schlag?

87

Wie kann ich die Bash so farbig aussehen lassen?

farbige Bash

daniel451
quelle
daniel451 wie kommt es, dass du deine eigene frage innerhalb der gleichen fristen beantwortet hast.
kva
4
@kva Das Beantworten Ihrer eigenen Frage zur gleichen Zeit wie das Posten wird im gesamten Stack Exchange-Netzwerk empfohlen.
CJ Dennis
Verwandte: askubuntu.com/questions/123268/… . Es wird erläutert, wie einzelne Teile der Eingabeaufforderung unterschiedlich eingefärbt werden können.
FreezingFire

Antworten:

128

~/.bashrcIn Texteditor und Kommentarzeile öffnen :

#force_color_prompt=yes

sein:

force_color_prompt=yes

Speichern und dann ausführen source ~/.bashrc

Zu Kra
quelle
Beantwortet die Frage nicht genau, aber ich mag dieses Ergebnis besser (weniger ablenkend).
James Hirschorn
Ich denke, es antwortet. warum nicht ?
Zum Kra
So sieht meins nach deiner Methode aus:! 2016-10-25 16: 12: 15.png Nicht genau wie in der Frage.
James Hirschorn
@JamesHirschorn Force_Color aktiviert nur Farben, können Sie immer verwalten, wie die Färbung mit PS1-Variablen aussehen wird, siehe mein Beispiel in einem meiner Skripte github.com/to-kra/dotfiles/blob/master/scripts/…, die auch den Git-Status aktivieren. .. Sie können Ihre eigene PS1 im Benutzerprofil exportieren lassen und ausgefallene Farben und Formate erstellen, die Sie mögen. thx
Kra
Ist force_color_prompt=yesdie beabsichtigte Art, Farben zu aktivieren? Für mich klingt das Forcen wie ein Workaround.
Jaakko
60

Ich habe diese Lösung gefunden:

  • öffne ~ / .bashrc in einem Editor
  • Kopieren Sie diese und fügen Sie sie am Ende der .bashrc-Datei hinzu:

    PS1='\[\033[1;36m\]\u\[\033[1;31m\]@\[\033[1;32m\]\h:\[\033[1;35m\]\w\[\033[1;31m\]\$\[\033[0m\] '
  • speichere die Datei und starte bashrc neu:

    source ~/.bashrc

Eine vollständige Liste der verfügbaren Farben und weiterer Optionen finden Sie unter den folgenden Links:

daniel451
quelle
Möglicherweise möchten Sie Liquid prompt auschecken. Es ist eine wirklich informative kleine Aufforderung. google.com/…
Scott Goodgame
Perfekte Farbwahl!
Puck
Eine Online-GUI, Easy Bash PS1-Generator
Jim Fred
3

Eine etwas allgemeinere Version sollte in einer abwechslungsreichen Umgebung funktionieren:
(abhängig von terminfo)

Fügen Sie dies ein in $HOME/.bashrc:

function fgtab {
  echo "tput setf/setb - Foreground/Background table"
  for f in {0..7}; do
    for b in {0..7}; do
      echo -en "$(tput setf $f)$(tput setb $b) $f/$b "
    done
    echo -e "$(tput sgr 0)"
  done
}

# The prompt in a somewhat Terminal -type independent manner:
cname="$(tput setf 3)"
csgn="$(tput setf 4)"
chost="$(tput setf 2)"
cw="$(tput setf 6)"
crst="$(tput sgr 0)"
PS1="\[${cname}\]\u\[${csgn}\]@\[${chost}\]\h:\[${cw}\]\w\[${csgn}\]\$\[${crst}\] "

Dann ausführen source ~/.bashrc.

Danach fgtabwird eine Farbtabelle mit Zahlen angezeigt. Diese Zahlen stehen für tput setf nund tput setb nwobei 'n' die Zahl ist, 'f' für 'Vordergrund' und 'b' für 'Hintergrundfarbe' steht.

tput sgr 0 setzt die Vordergrund- und Hintergrundfarben auf die Standardeinstellungen zurück.

Und wie Sie sehen können, wird das Ändern der für die Eingabeaufforderung verwendeten Farben sehr einfach (bearbeiten $HOME/.bashrcSie einfach die gleiche Nummer wie gewünscht).

Fügen Sie ein $(tput setb n)in hinzu, $cnamewenn Sie ALLE Eingabeaufforderungen mit Hintergrund-n haben möchten.

Hannu
quelle
Weitere Informationen
Hannu
man 5 terminfozeigt, was tputverwendet werden kann, es ist zwar ein bisschen technisch, also "pass auf" - aber ein bisschen raten und testen kann tatsächlich dazu führen, dass es funktioniert.
Hannu