在bash shell腳本中我們可以使用ASCII顏色來顯示文本信息。
目前創(chuàng)新互聯(lián)公司已為上千多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、石龍網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
格式:\033\[31m hello \033[0m
##m:
左側(cè)#:這個#可以是3或者4,作用不一樣。
3:前景色
4:背景色
右側(cè)#:顏色種類
1,2,3,4,5,6,7
前景和背景同時使用:\033[##;##m hello \033[0m
#m:
加粗、閃爍等功能。
多種控制符,可組合使用,彼此間使用分號隔開。
演示:
演示背景色
前景和背景同時使用
加粗、閃爍功能
實(shí)戰(zhàn)演練:
給自己的Linux的PS1變量添加上顏色,比如:
1、首先是我們要給自己的PS1要顯示的顏色部分添加值。
export PS1='[\033[31m\u\033[0m@\033[32m\h\033[0m \033[35m\W\033[0m]\$'
這樣子設(shè)置真的很不錯,達(dá)到了我們的需求,但是他是有問題的,就是比如當(dāng)你在輸入很長的字符串之后,你會發(fā)現(xiàn)bash不能自動換行顯示,而是覆蓋同一行的開頭的部分,慢慢的往后覆蓋掉一開始輸入的內(nèi)容,這是很不樂觀的,否則當(dāng)我們輸入過長的內(nèi)容時,顯示內(nèi)容是個問題怎么行呢?
初步判斷是加上了顏色代碼才出現(xiàn)這樣的問題,這可能是在PS1環(huán)境變量中,顏色代碼不適合直接添加至PS1中,所以我們需要進(jìn)行改正,就是每個顏色代碼后都加上 \[ 和 \] 。
例如:
export PS1='[\[\033[31m\]\u\[\033[0m\]@\[\033[32m\]\h\[\033[0m\] \[\033[35m\]\W\[\033[0m\]]\$'
可以看出有多少個顏色代碼就要加上多少個 \[ 和 \] 才行。這樣子設(shè)置好之后,這個毛病就沒有了,我們繼續(xù)可以愉快的在終端輸入長命令了。