首先使用一個例子來說明如何實現(xiàn)Shell彩色:
PS1="\[ \033[0;32;40m\u@\h:\w\$ \033[0m \]"
在上面命令中,“\033[0;32;40m”表示定義后面文本的顏色,“\033”表示啟動一個轉(zhuǎn)義序列,“[”定義開始顏色定義,“0”定義默認(rèn)的字體顏色,其它部分稍后定義。
“32”定義文本的前景色,這里32表示綠色;“40”定義文本的背景色,40表示黑色。
在字符串的最后定義了“ \033[0m”,它是用來恢復(fù)了默認(rèn)的文本顏色設(shè)置,這樣就只會得到一個彩色提示符,而不會影響命令和其輸出的顏色顯示(即黑底白字)。
我們一共有8種字體顏色可供選擇,它們分別是30 (黑色)、31 (紅色)、32 (綠色)、33 (黃色)、34 (藍(lán)色)、35 ( 紫紅色)、36 (青色)和37 (白色)。
對于底色也有8種顏色可供選擇,只需要將字體顏色的3修改為4即可,例如40、41、42、43、44、45、46、47。
文本屬性
我們前面提到,轉(zhuǎn)義序列符后面的“0”表示定義文本的顏色設(shè)置。
除了顏色設(shè)置以外,還可以設(shè)置文本的其它屬性。
轉(zhuǎn)義序列符后可以跟以下數(shù)值:0、1、22、4、24、5、25、7、27,分別定義顏色、黑體、非黑體、下畫線、非下畫線、閃爍、非閃爍、翻轉(zhuǎn)、非翻轉(zhuǎn)。