用到一些編譯工具,在輸出編譯資訊時,編譯通過的資訊用綠色輸出,錯誤資訊用紅色輸出。我覺得這個特性很有趣,自己在寫一些控制程式,或者批處理指令碼時,如果能給輸出加上提示色,應該看起來更直觀一些。在網上查了一些資料,其實這個特性比較容易使用,寫下來備忘。
首先看一下以下數字**。第一張表中數字代表顏色,第二章表中的數字代表行為。注意前景某色和背景某色不是同乙個數字。
前景 背景 顏色
30 40 黑色
31 41 紅色
32 42 綠色
33 43 黃色
34 44 藍色
35 45 紫紅色
36 46 青藍色
37 47 白色
** 意義
0 off
1 高亮顯示
4 underline
5 閃爍
7 反白顯示
8 不可見
具體使用方式如下。
echo -e "\033[43;31;5m 要用顏色輸出的字 \033[0m 預設方式輸出的字"
若使用python指令碼。
print "\033[43;31;5m 要用顏色輸出的字 \033[0m 預設方式輸出的字"
其實帶顏色的終端文字,是通過「ansi非常規字串行」來實現的。「\033[43;31;5m」用於設定屬性,\033引導非常規字串行,m意味著設定屬性然後結束非常規字串行。中間的數字43;31;5用於設定顏色和行為,順序無所謂,因為設定前景、背景、行為的數字沒有重複。"\033[0m"用於恢復預設屬性。如果沒有恢復預設屬性,以後輸出都按最後一次設定的方式來。
Linux 終端下顏色的輸出
先舉個例子 以紅色在終端上列印出 hello,world 對應的 如下 printf 033 31m 033 1m 開始以紅色列印 printf hello,world n 要恢復預設顏色列印,只需要再列印如下一句 printf 033 0m 從上面的例子可以看出printf 033 31m 033...
Linux 終端下顏色的輸出
在命令列下也能產生五顏六色的字型和圖案,只需要加上一些顏色 例如 echo e 033 41 36m 紅底綠字 033 0m 其中41的位置代表底色,36的位置是代表字的顏色 那些ascii code 是對顏色呼叫的始末.033 m 033 0m 字背景顏色範圍 40 49 40 黑 41 深紅 4...
Linux 終端下顏色的輸出
在命令列下也能產生五顏六色的字型和圖案,只需要加上一些顏色 例如 echo e 033 41 36m 紅底綠字 033 0m 其中41的位置代表底色,36的位置是代表字的顏色 那些ascii code 是對顏色呼叫的始末.033 m 033 0m 字背景顏色範圍 40 49 40 黑 41 深紅 4...