终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)。
书写格式:
开头部分:\033[显示方式;前景色;背景色m + 结尾部分:\033[0m
显示方式,前景色,背景色是可选参数,可以只写其中的某一个;另外由于表示三个参数不同含义的数值都是唯一的没有重复的,所以三个参数的书写先后顺序没有固定要求,系统都能识别;但是,建议按照默认的格式规范书写。
对于结尾部分,其实也可以省略,但是为了书写规范,建议\033[*开头,\033[0m结尾。
显示颜色格式:\033[显示方式;字体色;背景色m……[\033[0m]
显示方式
意义 | 显示方式 |
---|---|
默认 | 0 |
高亮显示 | 1 |
下划线 | 4 |
闪烁 | 5 |
反白显示 | 7 |
不可见 | 8 |
前景颜色和背景颜色
颜色 | 前景色 | 背景色 |
---|---|---|
黑色 | 30 | 40 |
红色 | 31 | 41 |
绿色 | 32 | 42 |
黄色 | 33 | 43 |
蓝色 | 34 | 44 |
紫红色 | 35 | 45 |
青蓝色 | 36 | 46 |
白色 | 37 | 47 |
没有设置的话就是默认
显示方式 | 效果 | 前景色 | 背景色 | 颜色描述 |
---|---|---|---|---|
0 | 终端默认设置 | 30 | 40 | 黑色 |
1 | 高亮显示 | 31 | 41 | 红色 |
4 | 使用下划线 | 32 | 42 | 绿色 |
5 | 闪烁 | 33 | 43 | 黄色 |
7 | 反白显示 | 34 | 44 | 蓝色 |
8 | 不可见 | 35 | 45 | 紫红色 |
22 | 非高亮显示 | 36 | 46 | 青蓝色 |
24 | 去下划线 | 37 | 47 | 白色 |
25 | 去闪烁 | |||
27 | 非反白显示 | |||
28 | 可见 |
How to change the color of your Linux terminal | Opensource.com