it-swarm.com.de

So ändern Sie den Schriftstil der Terminal-Eingabeaufforderung in Ubuntu MATE 16.04

Das Mate-Terminal hat wie jeder andere Terminal-Emulator in Ubuntu oder einem anderen Betriebssystem eine Eingabezeile wie:

[email protected]:~$

Wie ändere ich den Schriftstil dieser bestimmten Linie? Andernfalls werden Befehle in die obige Zeile eingegeben und anschließend werden mit dem Befehl Meldungen generiert. Ich möchte diesen Text auf einen anderen Stil einstellen. Ich kann das tun, indem ich zu Edit>Profile preferences gehe. Dies ändert jedoch den Schriftstil der Eingabezeile in denselben. Ich möchte, dass es einen Unterschied zwischen dem Text der Eingabezeile und dem Rest des Textes im Terminal gibt, damit ich nach dem ausführlichen Ausdruck von Nachrichten durch einen Befehl die Eingabezeile zurückverfolgen kann, ohne genau hinzuschauen.

Ubuntu 16.04 scheint eine Standardfarbe für die Eingabezeile zu haben, die durch das Ändern der Optionen in Profile preferences unverändert bleibt.

6
user_1_1_1

(Einige der folgenden Screenshots zeigen die Verwendung eines bestimmten Texteditors. Wenn dies für den Leser problematisch ist, wird er gebeten, die Verwendung dieses Editors durch den Postautor als einen Akt der unverschuldeten Naivität zu betrachten.)

Die Eingabeaufforderung des Terminals ist Teil Ihrer Benutzerumgebung mit dem Namen PS1. Sie ist in Ihrer .bashrc -Datei definiert, die Sie bearbeiten können, um sie zu ändern. Sie können mit echo $PS1 sehen, was es aktuell ist. Hier ist mein:

$ echo $PS1
\[\e]0;\[email protected]\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;35m\]\w\$\[\033[00m\]

Dadurch sieht meine Eingabeaufforderung im Vergleich zu einigen Befehlen so aus ...

Eine farbige Eingabeaufforderung erstellen Sie, indem Sie diese Zeile in Ihrem .bashrc auskommentieren.

#force_color_Prompt=yes

so sieht es also aus:

force_color_Prompt=yes

Dies bewirkt, dass die Eingabeaufforderung durch die Zeile nach if [ "$color_Prompt" = yes ]; then gesetzt wird.

welches standardmäßig ist:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

Die Farben werden durch diese Codes festgelegt:

  • hellgrün \[\033[01;32m\]
  • weiß \[\033[00m\]
  • hellblau \[\033[01;34m\]

und dann zurück zu weiß. Sie können sehen, dass sie abgesehen von der Zahl in der zweiten Reihe von Klammern gleich sind. Hier sind ein paar weitere Escape-Codes zur Auswahl:

Blue        0;34     Light Blue    1;34
Green       0;32     Light Green   1;32
Cyan        0;36     Light Cyan    1;36
Red         0;31     Light Red     1;31

Hier sind einige andere Optionen, um Ihre Eingabeaufforderung hervorzuheben

--- Alle im MATE-Terminal unter Ubuntu MATE getestet 16.04 ---

Beim Anwenden dieser Änderungen auf eine weiße Eingabeaufforderung lasse ich diese Zeile kommentiert:

#force_color_Prompt=yes

Bearbeiten Sie die vierte Zeile dieses Abschnitts von .bashrc:

if [ "$color_Prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ '

Wenn Sie eine Unterstreichung anwenden und Effekte auf eine farbige Eingabeaufforderung markieren möchten, müssen Sie, wie zuvor erläutert, force_color_Prompt=yes auskommentieren und die bearbeiten zweite Zeile anstelle der vierten. In den folgenden Beispielen beziehe ich mich auf die "vierte Zeile" und "zweite Zeile" aus dem obigen Snippet.

Fettgedruckte Eingabeaufforderung:

Ändern Sie die vierte Zeile, um die Escape-Sequenzen \[\e[1m\] (fett) und \[\e[0m\] (Stop fett) aufzunehmen.

PS1='${debian_chroot:+($debian_chroot)}\[\e[1m\]\[email protected]\h:\w\$ \[\e[0m\]'

Kein großer Unterschied - ich füge die obige Zeile zum Vergleich hinzu.

In den Farbfluchtsequenzen werden "helle" Farben (mit 1 anstelle von 0 wie in der obigen Tabelle gezeigt) als fett dargestellt. Ich habe versucht, die fettgedruckte Sequenz auf der farbigen Eingabeaufforderung zu verwenden, aber es scheint, dass das MATE-Terminal dies nicht zulässt, um es noch fettgedruckter zu machen . Ich habe es auch mit setaf Code versucht, aber immer noch kein Ergebnis. Vielleicht verstehe ich etwas falsch. Ich konnte auch keine kursive Eingabeaufforderung verwalten, und ich habe nicht einmal eine blinkende Eingabeaufforderung ausprobiert - das ist einfach nicht in Ordnung.

Unterstrichene Eingabeaufforderung:

Ändern Sie die vierte Zeile, um die Escape-Sequenzen \[\e[4m\] und \[\e[24m\] einzuschließen.

PS1='${debian_chroot:+($debian_chroot)}\[\e[4m\]\[email protected]\h:\w\$ \[\e[24m\]'

Deaktivieren Sie für unterstrichene farbige Eingabeaufforderung das Kommentarzeichen force_color_Prompt=yes und fügen Sie die Sequenz \[\e[4m\] zweimal in die zweite Zeile ein. Die vorhandenen Rücksetzcodes beenden den Effekt:

PS1='${debian_chroot:+($debian_chroot)}\[\e[4m\]\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\e[4m\]\[\033[01;34m\]\w\[\033[00m\]\$ '

Hervorgehobene Eingabeaufforderung:

Ändern Sie die vierte Zeile, um \[\e[7m\] und \[\e[27m\] einzuschließen

PS1='${debian_chroot:+($debian_chroot)}\[\e[7m\]\[email protected]\h:\w\$ \[\e[27m\]'

Deaktivieren Sie zum Hervorheben von Farben das Kommentarzeichen #force_color_Prompt=yes und ändern Sie die Escape-Farbcodes in der zweiten Zeile so, dass statt 4 ein 3 angezeigt wird. Beispiel:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;42m\]\[email protected]\h\[\033[00m\]:\[\033[01;44m\]\w\[\033[00m\]\$ '

Entfernen Sie das erste Zurücksetzen und die zweite Farbsequenz, um die Hervorhebung aller Farben zu erhalten:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;42m\]\[email protected]\h:\w\[\033[00m\]\$ '

Weitere exotische Optionen finden Sie unter meine Lieblings-AU-Frage und diese Website für eine detaillierte Anleitung.

Natürlich empfehle ich, Backups zu erstellen, während Sie herumspielen, aber wenn Sie jemals Ihren .bashrc FUBAREN, können Sie einfach einen neuen aus /etc/skel kopieren:

cp /etc/skel/.bashrc ~/.bashrc
5
Zanna