44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
|
# Linux Shell 颜色转义字符
|
|||
|
|
|||
|
终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关,shell,python,perl等均可以调用。
|
|||
|
|
|||
|
转义序列是以 ESC 开头,可以用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33)。
|
|||
|
|
|||
|
```bash
|
|||
|
# 背景色可以不用,后面必须以 m 结尾
|
|||
|
\033[显示方式;前景色;背景色m
|
|||
|
```
|
|||
|
|
|||
|
可以看到由于三者取值范围各有不同,所以不会产生重合的问题,从其取值即可判断设定内容,所以设定时顺序可变。前景色和背景色的取值范围和颜色说明如下表所示:
|
|||
|
|
|||
|
| 前景 | 背景 | 颜色 |
|
|||
|
|-----|------|-----|
|
|||
|
| 30 | 40 | 黑色 |
|
|||
|
| 31 | 41 | 红色 |
|
|||
|
| 32 | 42 | 绿色 |
|
|||
|
| 33 | 43 | 黄色 |
|
|||
|
| 34 | 44 | 蓝色 |
|
|||
|
| 35 | 45 | 洋红 |
|
|||
|
| 36 | 46 | 青色 |
|
|||
|
| 37 | 47 | 白色 |
|
|||
|
|
|||
|
显示方式设定值和含义如下表所示:
|
|||
|
|
|||
|
| 代码 | 意义 |
|
|||
|
|-----|------|
|
|||
|
| 0 | 默认值/OFF |
|
|||
|
| 1 | 高亮加粗显示 |
|
|||
|
| 22 | 非高亮加粗 |
|
|||
|
| 4 | 下划线 |
|
|||
|
| 24 | 非下划线 |
|
|||
|
| 5 | 闪烁 |
|
|||
|
| 25 | 非闪烁 |
|
|||
|
| 7 | 反显 |
|
|||
|
| 27 | 非反显 |
|
|||
|
| 8 | 不可见 |
|
|||
|
|
|||
|
示例:PS1="\[\e[33;42;1m\h:\W \u\$\]"
|
|||
|
前景色:黄色
|
|||
|
背景色:绿色
|
|||
|
样式:高亮加粗
|