在linux 上写shell脚本输出的时候,希望加一些自定义输出格式。
例如文字的颜色 背景 格式这些,做一些DIY属性,使界面更人性化,可视化。
举个例子:
以下的提示信息
就可以用该语句表现出来:
echo -en "
\e[5;41m[在使用过程中请避免使用ctrl+c中断操作,谢谢合作!]\e[0m
\n"
解释:
1.\e 转义起始符,定义一个转义序列, 可以使用 \033代替
2.[ 表示开始定义颜色
3.5表示字体闪烁
4.41表示字体背景颜色为红
5.m 转义终止符,表示颜色定义完毕
6.再次使用 \e[ ,表示再次开启颜色定义,0表示使用默认的颜色,m表示颜色定义结束,所以 \e[0m 的作用是恢复之前的配色方案
7.中间为文本内容
具体参数:
一、字体颜色
默认=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,紫色=35,天蓝色=36,白色=3
二、背景颜色
默认=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,紫色=45,天蓝色=46,白色=47
三、黑体彩色
黑=90 深红=91 绿=92 黄色=93 蓝色=94 紫色=95 深绿=96 白色=97
与字体颜色对比:
四、控制选项
\033[0m 关闭所有属性
\033[1m 设置高亮度
\033[4m 下划线
\033[5m 闪烁
\033[7m 反显,撞色显示,显示为白色黑底,或者显示为黑底白字
\033[8m 消影,字符颜色将会与背景颜色相同
\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 显示光标
参考博文: