Ich möchte, dass die Befehle, die ich in das Terminal eingegeben habe, sich von der gesamten Ausgabe abheben.
Zum Beispiel:
imac:~ buster$chmod -R gw meinOrdner
imac:~ buster$CD MeinOrdner
imac:myfolder buster$ls -l
insgesamt 0
drwxr-xr-x 9 Root-Administrator 306 20. April 2010 bin
drwxr-xr-x 7 Root-Administrator 238 20. April 2010 include
drwxr-xr-x 73 Root-Administrator 2482 18. Mai 17:16 lib
drwxr-xr-x 6 Root-Administrator 204 20. April 2010 man
imac:myfolder buster$Echo, Go Giants!
Auf geht's, Giants!
Fett fällt mir gleich ein, aber ich würde eine Farbe oder sogar die Hervorhebung der gesamten Linie akzeptieren …
Ich bin sicher, dass es eine Möglichkeit gibt, dies zu tun, aber sie ist mir nicht klar ...
Danke!
Antwort1
Bearbeiten Sie Ihr ~/.bash_profile
„oder“ ~/.bashrc
(siehe Gilles‘ Kommentar unten) und fügen Sie die folgenden Zeilen hinzu:
BOLD="\[\033[1m\]"
OFF="\[\033[m\]"
PS1="${OFF}\u@\h:\w \$${BOLD}"
PS2="> ${BOLD}"
trap 'echo -ne "${OFF}" > $(tty)' DEBUG
Bewegen Sie das ${BOLD}
herum, um einen Teil der Eingabeaufforderung auch fett zu machen. Wenn die Eingabeaufforderung selbst nicht farbig sein soll, benötigen Sie das ${OFF}
Präfix in PS1
, andernfalls werden leere Zeilen (durch Drücken der Eingabetaste, ohne dass etwas geschrieben wurde) die folgende Eingabeaufforderung fett machen (Danke an @Jay, nochmals vielen Dank!)
Dadurch wird eine Debug-Trap hinzugefügt, um die Fettformatierung zu deaktivieren. Es handelt sich also um einen ziemlichen Hack.Credits(funktioniert jedoch ohne Gruppen-TTY unter OS X).
Das ist ein bisschen ein Hack, verwenden Sie es also auf eigenes Risiko.
Einfacher und genauso gut sichtbar wäre es, wenn Sie Ihre PS1
/ -Eingabeaufforderungen fett setzen würden:PS2
BOLD="\[\033[1m\]"
OFF="\[\033[m\]"
PS1="${BOLD}\u@\h:\w \$${OFF}"
PS2="${BOLD}>${OFF} "
Antwort2
Ich hatte ein kleines Problem mit den Lösungen hier bei der Verwendung von El Capitan (insbesondere in iTerm2, aber auch im normalen alten Terminal). Ich habe zwei Arten von Fehlern erhalten:
- Die Möglichkeit, meine Bash-Eingabeaufforderung vollständig zu löschen, indem ich einfach die Leertaste und dann die Rücktaste drücke
Unerwünschte Zeichen finden ihren Weg in meine Bash-Ausgabe, z. B.
pwd
würde die Eingabe zu\[\]/Users/home/Directory
oder in
\e[0m/Users/home/Directory
Ich schlage die folgende Lösung vor, die eigentlich nichts weiter als das Gleiche ist.
BOLD="\033[1m"
OFF="\033[m"
PS1="${OFF}\u@\h :${BOLD}"
PS2="> ${BOLD}"
trap 'echo -ne "${OFF}" > $(tty)' DEBUG