在写shell脚本有时候不可避免需要用到颜色,所以这里想做个总结,个人笔记;
格式:echo -e “\033[字体属性;字背景颜色;文字颜色m字符串\033[0m”
如:echo -e “\033[1;47;31mhahaha\033[0m”
其中1为字体属性,47为背景颜色,31为字体的颜色,hahaha为需要标色的内容
需要注意的事项:
1.033可以使用e代替
2.echo后面要加-e选项,-e:激活转义字符。
3.字体背景颜色跟文字颜色之间使用的是英文的双引号" "
4.字符串前后是可以没有空格的,要是有空格,则输出的时候也会有空格
字体颜色(30-37):
ANSI码 | 意义 |
---|---|
30 | 黑色 |
31 | 红色 |
32 | 绿色 |
33 | 黄色 |
34 | 蓝色 |
35 | 紫色 |
36 | 天蓝色 |
37 | 白色 |
背景颜色(40-47):
ANSI码 | 意义 |
---|---|
40 | 黑色 |
41 | 红色 |
42 | 绿色 |
43 | 黄色 |
44 | 蓝色 |
45 | 紫色 |
46 | 天蓝色 |
47 | 白色 |
背景与字体搭配的一些实例:
echo -e “\033[40;37m 黑底白字 \033[0m”
echo -e “\033[41;32m 红底绿字 \033[0m”
echo -e “\033[42;30m 绿底黑字 \033[0m”
echo -e “\033[43;32m 黄底绿字 \033[0m”
echo -e “\033[44;31m 蓝底红字 \033[0m”
echo -e “\033[45;37m 紫底白字 \033[0m”
echo -e “\033[46;37m 天蓝底黑字 \033[0m”
echo -e “\033[47;30m 白底黑字 \033[0m”
字体属性:
ANSI码 | 含义 |
---|---|
0 | 常规文本 |
1 | 粗体文本(高亮度显示) |
4 | 含下划线文本 |
5 | 闪烁文本 |
7 | 反色(补色文本) |
8 | 消隐 |
控制选项说明
\033[30m — \033[37m 设置前景色
\033[40m — \033[47m 设置背景色
\033[nA 光标上移n行
\033[nB 光标下移n行
\033[nC 光标右移n行
\033[nD 光标左移n行
\033[y;xH设置光标位置
\033[2J 清屏
\033[K 清除从光标到行尾的内容
\033[s 保存光标位置
\033[u 恢复光标位置
\033[?25l 隐藏光标
\033[?25h 显示光标