格式
linux终端下输出带颜色的文字只需在文字前面添加如下格式
\033[显示方式;前景色;背景色m
其中\033
是ESC健的八进制,\033[
即告诉终端后面是设置颜色的参数,显示方式,前景色,背景色均是数字
参数含义
显示方式 | 意义 |
---|---|
0 | 终端默认设置 |
1 | 高亮显示 |
4 | 使用下划线 |
5 | 闪烁 |
7 | 反白显示 |
8 | 不可见 |
前景色 | 背景色 | 颜色 |
---|---|---|
30 | 40 | 黑色 |
31 | 41 | 红色 |
32 | 42 | 绿色 |
33 | 43 | 黃色 |
34 | 44 | 蓝色 |
35 | 45 | 紫红色 |
36 | 46 | 青蓝色 |
37 | 47 | 白色 |
示例
可以将所有控制参数都用上,也可以只使用前景色或背景色
但有一点要注意,如果输出带颜色的字符后并没有恢复终端默认设置,后续的命令输出仍旧会采用之前的颜色,如果是在脚本中设置了颜色而未恢复,则整个脚本的输出都会采用之前的颜色,因此如果不希望影响后面文字的输出,最好是在输出带颜色的文字之后恢复终端默认设置,如下
如果只是想简单设置文字颜色,推荐如下方式
echo "\033[31m红色文字\033[0m"
echo "\033[32m绿色文字\033[0m"
echo "\033[33m黄色文字\033[0m"
原文:
linux终端输出带颜色字符