echo 输出颜色

shell脚本里使用echo输出颜色

     

echo命令颜色显示:

echo:
      -n:  不换行.
      -e:让转移符生效. (tab) (换行)

实例:

$ echo -e "33[34mabcd33[0m"
abcd

其中:33:控制符相当于crtl键、[3  :表示颜色、4:表示颜色、从1-7开始、33[0m:表示结尾符. 写法如这种 33[3 1-7

$ echo -e "33[1;5;31mWarning33[0m" change the password.
Warning change the password.
Warning 这个字段会一闪一闪的样式.

格式: echo -e "33[字背景颜色;字体颜色m字符串33[0m" 
转义序列
要是通过彩色化提示符来增加个性化,就要用到转义序列。 转义序列就是一个让 shell 执行一个特殊步骤的控制指令。 转义序列通常都是以 ESC 开头(这也是它的命名原因)。 在 shell 里表示为 ^[。这种表示法需要一点时间去适应, 也可以用 33 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33),转义字符用、“e”.也就是说上面的33、e是相同的意思。


例如: 
echo -e "33[43;35m Hellow world ! 33[0m"

其中43的位置代表底色, 35的位置是代表字的颜色 

那些ascii code 是对颜色调用的始末. 
33[ ; m …… 33[0m 

 

字背景颜色范围:40----49 
40:黑 
41:深红 
42:绿 
43:黄色 
44:蓝色 
45:紫色 
46:深绿 
47:白色 

字颜色:30-----------39 
30:黑 
31:红 
32:绿 
33:黄 
34:蓝色 
35:紫色 
36:深绿 
37:白色 

===============================================ANSI控制码的说明 
33[0m 关闭所有属性 
33[1m 设置高亮度 
33[4m 下划线 
33[5m 闪烁 
33[7m 反显 
33[8m 消隐 
33[30m -- 33[37m 设置前景色 
33[40m -- 33[47m 设置背景色 
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 显示光标

原文地址:https://www.cnblogs.com/brady-wang/p/12816895.html