Einleitung¶
Wenn wir Bash-Skripte herunterladen, die von anderen geschrieben wurden, werden manchmal einige Zeichenketten mit speziellen Farben gekennzeichnet. Wie kann dieser Effekt in einem bash-Skript erreicht werden?
Schriftfarbe¶
| Farbcode | Beschreibung |
|---|---|
| 30 | schwarz |
| 31 | rot |
| 32 | grün |
| 33 | gelb |
| 34 | blue |
| lila | |
| 36 | dunkelgrün |
| 37 | weiß |
Hintergrundfarbe der Schrift¶
| Hintergrundfarbcode | Beschreibung |
|---|---|
| 40 | schwarz |
| 41 | crimson |
| 42 | grün |
| 43 | gelb |
| 44 | blau |
| 45 | lila |
| 46 | dunkelgrün |
| 47 | weiß |
Anzeigemodus¶
| Code | Beschreibung |
|---|---|
| 0 | Terminal-Standardeinstellungen |
| 1 | Hervorhebung |
| 4 | Unterstrichen |
| 5 | Cursor blinkt |
| 7 | Anzeige umkehren |
| 8 | Ausblenden |
Ausführungsmodus¶
-
\033[1;31;40m
1gibt den Anzeigemodus an, der optional ist. „31“ gibt die Schriftfarbe an.40mgibt die Hintergrundfarbe der Schrift an -
\033[0m Stellt die Standardfarbe des Terminals wieder her, d. h., hebt die Farbeinstellung auf
Skript-Beispiel¶
Sie können ein Skript schreiben, um die Farbänderung zu testen, z.B.:
#!/bin/bash
# Font color cycle
for color1 in {31..37}
do
echo -e "\033[0;${color1};40m---hello! Rocky---\033[0m"
done
echo "-------"
# Background color cycle
for color2 in {40..47}
do
echo -e "\033[30;${color2}m---hello! Rocky---\033[0m"
done
echo "-------"
# Cycle of display mode
for color3 in 0 1 4 5 7 8
do
echo -e "\033[${color3};37;40m---hello! Rocky---\033[0m"
done
Shell > chmod a+x color_set.sh
Shell > ./color_set.sh
So sieht das Ergebnis aus:

Author: tianci li
Contributors: Steven Spencer