花心胡萝卜BLOG花心胡萝卜BLOG

努力,进步,创造价值. YY综合频道:84613536 集学习休闲娱乐于一身的频道!

like

Linux的shell中echo改变输出显示样式

浏览(78) 评论(1) 分类:LinuxC  作者:花心胡萝卜  发布时间:
分享到:

还是由makefile引发的问题.

我喜欢在makefile中加入各种提示,来让我清晰的知道make到哪一步了.

但是,输出的文字颜色并不显眼,不大好看.于是就研究了一下echo的输出.

总体来说,就是设置echo的样式,来进行彩色或者闪烁文本的输出,达到显眼的目的.

可以先输入下面两句话看看效果: 

 Shell 
1
2
 
echo -e "\033[32;49;1m [Compile XXX is Over!] \033[39;49;0m"
echo -e "\e[32;49;1m [Compile XXX is Over!] \033[39;49;0m"

 PS: 这两句话的效果其实是一样的!

 

文本终端的颜色可以使用“ANSI非常规字符序列”来生成。举例:

 Shell
1
 
echo -e "\033[44;37;5m Flash Me \033[0m is so cool"

 以上命令设置背景成为蓝色,前景白色,闪烁光标,输出字符“Flash Me”,然后重新设置屏幕到缺省设置,输出字符 “is so cool”。

“e”是命令 echo 的一个可选项,它用于激活特殊字符的解析器。

“\033”引导非常规字符序列。

“m”意味着设置属性然后结束非常规字符序列,

这个例子里真正有效的字符是 “44;37;5” 和“0”。 

修改“44;37;5”可以生成不同颜色的组合,数值和编码的前后顺序没有关系。

 

可以选择的编码如下所示: 

 Shell 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
编码   颜色/动作

0       重新设置属性到缺省设置
1       设置粗体
2       设置一半亮度(模拟彩色显示器的颜色)
4       设置下划线(模拟彩色显示器的颜色)
5       设置闪烁
7       设置反向图象
22      设置一般密度
24     关闭下划线
25     关闭闪烁
27     关闭反向图象
30     设置黑色前景
31     设置红色前景
32     设置绿色前景
33     设置棕色前景
34     设置蓝色前景
35     设置紫色前景
36     设置青色前景
37     设置白色前景
38     在缺省的前景颜色上设置下划线
39     在缺省的前景颜色上关闭下划线
40     设置黑色背景
41     设置红色背景
42     设置绿色背景
43     设置棕色背景
44     设置蓝色背景
45     设置紫色背景
46     设置青色背景
47     设置白色背景
49     设置缺省黑色背景

 

其他有趣的代码还有: 

 Shell 
1
2
3
4
5
6
7
 
\033[2J          清除屏幕
\033[0q          关闭所有的键盘指示灯
\033[1q          设置“滚动锁定”指示灯 (Scroll Lock)
\033[2q          设置“数值锁定”指示灯 (Num Lock)
\033[3q          设置“大写锁定”指示灯 (Caps Lock)
\033[15:40H     把关闭移动到第15行,40列
\007             发蜂鸣生beep

 

Tags: Linux Shell 彩色 echo 输出 
评论
评论正在努力加载...