From 0c564cbbd4546946df726111ab3d83b8df93899e Mon Sep 17 00:00:00 2001 From: "chen.yang" Date: Thu, 5 Aug 2021 16:19:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20Linux=20Shell=20=E9=A2=9C?= =?UTF-8?q?=E8=89=B2=E8=BD=AC=E4=B9=89=E5=AD=97=E7=AC=A6.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: chen.yang --- .../Modules/Shell/Linux_Shell_颜色转义字符.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 Software/System/Linux/Modules/Shell/Linux_Shell_颜色转义字符.md diff --git a/Software/System/Linux/Modules/Shell/Linux_Shell_颜色转义字符.md b/Software/System/Linux/Modules/Shell/Linux_Shell_颜色转义字符.md new file mode 100644 index 0000000..9746e7d --- /dev/null +++ b/Software/System/Linux/Modules/Shell/Linux_Shell_颜色转义字符.md @@ -0,0 +1,43 @@ +# 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\$\]" +前景色:黄色 +背景色:绿色 +样式:高亮加粗