標籤:linux shell指令碼 顏色編輯
Linux下Shell指令碼輸出帶顏色文字
文本終端的顏色可以使用“ANSI非常規字元序列”來產生。
舉例: "echo -e \033[44;37;5m BLUE \033[0m"
"echo -e \033[44;37;5m BLUE \033[0m BLACK"
需要修改的地方是紅色帶底線的部分,其中[***m部分的內容換成下面的數字,後面的內容是自己想要上色的內容。
以上命令設定作用如下:背景色為藍色,前景色彩為白色,字型閃爍,輸出字元“BLUE”,然後重新設定螢幕到預設設定,輸出字元 “BLACK”。“e”是命令 echo 的一個可選項,它用於啟用特殊字元的解析器。“\033”引導非常規字元序列。“m”意味著設定屬性然後結束非常規字元序列,這個例子裡真正有效字元是 “44;37;5” 和“0”。修改“44;37;5”可以產生不同顏色的組合,數值和編碼的前後順序沒有關係。
可以選擇的編碼如下所示:
【前景即為字型顏色;
背景即類似於文字的底紋,或說成是背景色。】
編碼顏色/動作
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 設定預設黑色背景
以下是一個系統的執行個體(未研究,內容待修改)
#定義終端顏色
function def_colors()
{
#特性
normal='\033[0m';bold='\033[lm';
dim='\033[2m';under='\033[4m';
italic='\033[3m';noitalic='\033[23m';blink='\033[5m';
reverse='\033[7m';conceal='\033[8m';nobold='\033[22m';
nounder='\033[24m';noblink='\033[25m';
#前景
black='\033[30m';red='\033[31m';
green='\033[32m';yellow='\033[33m';
blue='\033[34m';magenta='\033[35m';
cyan='\033[36m';white='\033[37m';
#背景
bblack='\033[40m';bred='\033[41m';
bgreen='\033[42m';byellow='\033[43m';
bblue='\033[44m';bmagenta='\033[45m';
bcyan='\033[46m';bwhite='\033[47m';
}
def_colors</pre>
本文出自 “吉祥娃娃” 部落格,轉載請與作者聯絡!