Bash/Colors: Unterschied zwischen den Versionen
K (Textersetzung - „Linux:Shell:“ durch „“) |
K (Textersetzung - „[[Kategorie:/“ durch „[[Kategorie:“) |
||
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 196: | Zeile 196: | ||
* https://stackoverflow.com/questions/5947742/how-to-change-the-output-color-of-echo-in-linux | * https://stackoverflow.com/questions/5947742/how-to-change-the-output-color-of-echo-in-linux | ||
[[ | [[Kategorie:Bash/Konfiguration]] |
Aktuelle Version vom 28. März 2023, 11:37 Uhr
Bash Colors[Bearbeiten | Quelltext bearbeiten]
You can make your BASH script more pretty, by colorizing its output.
Use ANSI escape sequences to set text properties like foreground and background colors.
Colorizing Shell[Bearbeiten | Quelltext bearbeiten]
Use the following template for writing colored text:
echo -e "\e[COLORmSample Text\e[0m"
Option | Description |
-e | Enable interpretation of backslash escapes |
\e[ | Begin the color modifications |
COLORm | Color Code + ‘m’ at the end |
\e[0m | End the color modifications |
Examples:
$ echo -e "\e[31mRed Text\e[0m"
$ echo -e "\e[42mGreen Background\e[0m" Green Background
ANSI — Color Escape Codes[Bearbeiten | Quelltext bearbeiten]
Shell scripts commonly use ANSI escape codes for color output:
Color | Foreground Code | Background Code | Sample |
Black | 30 | 40 | |
Red | 31 | 41 | |
Green | 32 | 42 | |
Brown | 33 | 43 | |
Blue | 34 | 44 | |
Purple | 35 | 45 | |
Cyan | 36 | 46 | |
Light Gray | 37 | 47 |
Escape sequence also allows to control the manner in which characters are displayed on the screen:
ANSI Code | Description |
0 | Normal Characters |
1 | Bold Characters |
4 | Underlined Characters |
5 | Blinking Characters |
7 | Reverse video Characters |
Examples:
$ echo -e "\e[1mBold Text\e[0m" Bold Text $ echo -e "\e[3mUnderlined Text\e[0m" Underlined Text
By combining all these escape sequences, we can get more fancy effect.
echo -e "\e[COLOR1;COLOR2mSample Text\e[0m"
There are some differences between colors when combining colors with bold text attribute:
Color | Foreground Code | Background Code | Sample |
Dark Gray | 1;30 | 1;40 | |
Light Red | 1;31 | 1;41 | |
Light Green | 1;32 | 1;42 | |
Yellow | 1;33 | 1;43 | |
Light Blue | 1;34 | 1;44 | |
Light Purple | 1;35 | 1;45 | |
Light Cyan | 1;36 | 1;46 | |
White | 1;37 | 1;47 |
Examples:
$ echo -e "\e[1;34mLight Blue Text\e[0m"
$ echo -e "\e[1;33;4;44mYellow Underlined Text on Blue Background\e[0m"