基本語法shell
echo "\033[41;36m something \033[0m"
能夠看到 "\033[ " 是成對出現的,這是固定語法,知道就行 , 而後第一個"\033[ "後面是 41;36m , 第二個"\033[ " 後面是0m" ,具體含義下面介紹:bash
第一個"\033[字體
中括號後面能夠有一個值,也能夠有兩個值,以分號隔開,表明着要顯示的文字的背景和顏色,默認都是窗口本來的顏色。code
其中41的位置表明背景底色 ,36m的位置是表明文字的顏色 , 背景底色不加m , 文字顏色要加m orm
顏色對應的值分別以下:ci
背景的顏色範圍是 40 -- 47 echo -e 「\033[40;37m 黑底白字 \033[0m」 echo -e 「\033[41;37m 紅底白字 \033[0m」 echo -e 「\033[42;37m 綠底白字 \033[0m」 echo -e 「\033[43;37m 黃底白字 \033[0m」 echo -e 「\033[44;37m 藍底白字 \033[0m」 echo -e 「\033[45;37m 紫底白字 \033[0m」 echo -e 「\033[46;37m 天藍底白字 \033[0m」 echo -e 「\033[47;30m 白底黑字 \033[0m」 字體的顏色範圍是 30m -- 37m echo -e 「\033[30m 黑色字 \033[0m」 echo -e 「\033[31m 紅色字 \033[0m」 echo -e 「\033[32m 綠色字 \033[0m」 echo -e 「\033[33m 黃色字 \033[0m」 echo -e 「\033[34m 藍色字 \033[0m」 echo -e 「\033[35m 紫色字 \033[0m」 echo -e 「\033[36m 天藍字 \033[0m」 echo -e 「\033[37m 白色字 \033[0m」
---------------------------------------------------------------------------------------------------it
第二個"\033[table
後面只有一個0m, 這個是控制某些特殊顯示效果的,好比顯示時光標的控制、閃爍等,基本上用不到。下面列出來,以供參考:class
\33[0m 關閉全部屬性 \33[1m 設置高亮度 \33[4m 下劃線 \33[5m 閃爍 \33[7m 反顯 \33[8m 消隱 \33[30m — \33[37m 設置前景色 \33[40m — \33[47m 設置背景色 \33[nA 光標上移n行 \33[nB 光標下移n行 \33[nC 光標右移n行 \33[nD 光標左移n行 \33[y;xH設置光標位置 \33[2J 清屏 \33[K 清除從光標到行尾的內容 \33[s 保存光標位置 \33[u 恢復光標位置 \33[?25l 隱藏光標 \33[?25h 顯示光標
echo –e 參數可根據本身的系統選擇,不加 –e 也能夠。若是不加顯示不出來,就加上,這個主要涉及到轉義的問題。語法
我本身用到的部分shell以下:
#!/bin/bash text=`cat /etc/passwd` echo 「\033[41;37m $text \033[0m」