很早之前在学习Makefile的时候,对linux的shell字体颜色有一点点研究。在使用ffmpeg工具时,也看到带有不同的颜色的信息输出,比如红色表示错误信息。现在,重新用代码来实现输出不同的颜色的打印信息。
打印不同颜色的核心格式为:[{attr};{fg};{bg}m。其中,在ascii中也用“^[”表示,在研究uboot时也顺便学习了一下。在代码中,如用八进制,写作\033,如用十六进制则写作\x1b(参见下面的代码)。
attr表示显示字体的属性,如加粗、下划线、闪烁等。值如下:
0 Reset All Attributes (return to normal mode)
1 Bright (Usually turns on BOLD)
2 Dim
3 Underline
5 Blink
7 Reverse
8 Hidden
fg是前景颜色,即字体颜色,如红色、黄色等,值如下:
30 Black
31 Red
32 Green
33 Yellow
34 Blue
35 Magenta
36 Cyan
37 White
bg是背景颜色,值如下:
40 Black
41 Red
42 Green
43 Yellow
4