Linux下输出不同颜色的字体详解
1.介紹:終端字符的顏色是用轉義序列進行控制,是文本模式下的系統顯示功能,和具體的語言無關。
轉義序列是以 ESC 開頭,可以用 \033 完成相同的工作(ESC 的 ASCII 碼用十進制表示就是 27, = 用八進制表示的 33)。
2.格式:
printf("\033[字背景顏色;字體顏色m 字符串 \033[0m" );
例子如下:
printf("\033[1m\033[45;33m HELLO_WORLD \033[0m\n");
3.具體的介紹:
顏色代碼: QUOTE:
字背景顏色范圍: 40–49 字顏色: 30–39
40: 黑 30: 黑
41: 紅 31: 紅
42: 綠 32: 綠
43: 黃 33: 黃
44: 藍 34: 藍
45: 紫 35: 紫
46: 深綠 36: 深綠
47: 白色 37: 白色
ANSI控制碼:
QUOTE:
\033[0m 關閉所有屬性
\033[1m 設置高亮度
\033[4m 下劃線
\033[5m 閃爍
\033[7m 反顯
\033[8m 消隱
\033[30m – \033[37m 設置前景色
\033[40m – \033[47m 設置背景色
\033[nA 光標上移n行
\03[nB 光標下移n行
\033[nC 光標右移n行
\033[nD 光標左移n行
\033[2J 清屏
\033[s 保存光標位置
\033[u 恢復光標位置
\033[?25l 隱藏光標
\033[?25l 顯示光標
其中 ,’\033[0m’用于恢復默認的終端輸出屬性,否則會影響后續的輸出。
顯示:0(默認)、1(粗體/高亮)、22(非粗體)、4(單條下劃線)、24(無下劃線)、5(閃爍)、25(無閃爍)、7(反顯、翻轉前景色和背景色)、27(無反顯)
4.基于常用參數,可定義如下單一控制宏,用于printf系列語句:
1 #define NONE “\e[0m”
2 #define BLACK “\e[0;30m”
3 #define L_BLACK “\e[1;30m”
4 #define RED “\e[0;31m”
5 #define L_RED “\e[1;31m”
6 #define GREEN “\e[0;32m”
7 #define L_GREEN “\e[1;32m”
8 #define BROWN “\e[0;33m”
9 #define YELLOW “\e[1;33m”
10 #define BLUE “\e[0;34m”
11 #define L_BLUE “\e[1;34m”
12 #define PURPLE “\e[0;35m”
13 #define L_PURPLE “\e[1;35m”
14 #define CYAN “\e[0;36m”
15 #define L_CYAN “\e[1;36m”
16 #define GRAY “\e[0;37m”
17 #define WHITE “\e[1;37m”
18
19 #define BOLD “\e[1m”
20 #define UNDERLINE “\e[4m”
21 #define BLINK “\e[5m”
22 #define REVERSE “\e[7m”
23 #define HIDE “\e[8m”
24 #define CLEAR “\e[2J”
25 #define CLRLINE “\r\e[K” //or “\e[1K\r”
總結
以上是生活随笔為你收集整理的Linux下输出不同颜色的字体详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux—系统文件和目录介绍
- 下一篇: linux--gdb调试