代码
# col.sh
# 颜色代码标识 03 可以替换为 E
# 多个 ANSI 控制码可同时使用,用分号(;)作为分隔符, 红底绿字闪烁:echo -e "E[32;41;05mtestE[0m"
echo "默认:黑色背景色(40),白色前景色(37),即:黑底白字"
echo
background_color=$"
字体背景颜色范围:40-49
40:黑色
41:红色
42:绿色
43:黄色
44:蓝色
45:紫色
46:天蓝
47:白色
示例代码如下:"
echo -e $background_color
echo -e " 33[40;37m_黑底 白字 33[0m"
echo -e " 33[41;37m_红底 白字 33[0m"
echo -e " 33[42;37m_绿底 白字 33[0m"
echo -e " 33[43;37m_黄底 白字 33[0m"
echo -e " 33[44;37m_蓝底 白字 33[0m"
echo -e " 33[45;37m_紫底 白字 33[0m"
echo -e " 33[46;37m_天蓝底白字 33[0m"
echo -e " 33[47;30m_白底 黑字 33[0m"
echo
foreground_color=$"
字体前景颜色范围:30-39
30:黑色
31:红色
32:绿色
33:黄色
34:蓝色
35:紫色
36:天蓝
37:白色
示例代码如下:"
echo -e $foreground_color
echo -e " 33[47;30m_白底黑字 33[0m"
echo -e " 33[31m_红色字 33[0m"
echo -e " 33[32m_绿色字 33[0m"
echo -e " 33[33m_黄色字 33[0m"
echo -e " 33[34m_蓝色字 33[0m"
echo -e " 33[35m_紫色字 33[0m"
echo -e " 33[36m_天蓝字 33[0m"
echo -e " 33[37m_白色字 33[0m"
执行结果
总结(表格形式; E 标识符在 PS1 环境变量中不生效,只能用 33)
前景(3开头) 背景(4开头) 颜色 ANSI控制码(结束标识E[0m)
30 40 0黑色 E[30mE[0m,E[40mE[0m
31 41 1红色 E[31mE[0m,E[41mE[0m
32 42 2绿色 E[32mE[0m,E[42mE[0m
33 43 3黄色 E[33mE[0m,E[43mE[0m
34 44 4蓝色 E[34mE[0m,E[44mE[0m
35 45 5紫色 E[35mE[0m,E[45mE[0m
36 46 6天蓝 E[36mE[0m,E[46mE[0m
37 47 7白色 E[37mE[0m,E[47mE[0m
ANSI 其它控制码
控制码 说明
33[0m 关闭所有属性,即属性结束标识
33[01m 设置高亮度,即字体加粗、文体强调
33[03m 设置倾斜
33[04m 下划线
33[05m 闪烁
33[07m 反显
33[08m 消隐
33[09m 文字中划线
33[3nm 设置前景色(0 ≤ n ≤ 7)
33[4nm 设置背景色(0 ≤ n ≤ 7)
33[nA 光标上移n行
33[nB 光标下移n行
33[nC 光标右移n行
33[nD 光标左移n行
33[y;xH 设置光标位置
33[2J 清屏
33[K 清除从光标到行尾的内容
33[s 保存光标位置
33[u 恢复光标位置
33[?25l 隐藏光标
33[?25h 显示光标