設置Linux終端字體顏色

系統啓動後,環境變量加載的順序爲:/etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → /etc/bashrcshell

想要修改某用戶登陸後shell字體的顏色,在~/.bashrc中修改PS1的內容便可。vim

命令提示符PS1的經常使用參數:bash

\d :日期,格式爲"周 月 日",例如:"Mon Aug 1"   
\H :完整的主機名;   
\h :僅取主機的第一個名字;  
\t :24小時制的時間,如:HH:MM:SS;
\A :24小時制的時間:HH:MM; 
\T :12小時制的時間;      
\u :當前用戶的用戶名; 
\v :BASH的版本信息;   
\w :當前工做目錄的完整路徑;   
\W :當前工做目錄的basename;     
\$ :提示符,若是是root時,提示符爲:#,普通用戶則爲:$

要實現顏色顯示,這裏要用到轉義序列;轉義序列就是一個讓 shell 執行一個特殊步驟的控制指令。
轉義序列一般都是以ESC開頭,在shell裏表示爲^[ ,這種表示法須要一點時間去適應,也能夠用 \033 完成相同的工做(ESC的ASCII 碼用十進制表示就是27,等於用八進制表示的033)。
要直接在shell裏面輸入轉義序列須要先按CTRL-v ESC或者CRTL-v-[字體

\033[m 聲明瞭轉義序列的開始。
\033[0m 聲明轉義序列結束,回到默認顏色。code

PS1中設置字符顏色有兩種方式,效果相同:登錄

一、\e[F;Bm
二、\033[F;Bm

其中"F"爲字體顏色,編號爲30-37
"B"爲背景顏色,編號爲40-47

不一樣的數字表明不一樣的意義,支持的顏色列表:變量

F       B
30      40      黑色
31      41      紅色
32      42      綠色
33      43      黃色
34      44      藍色
35      45      紫色
36      46      青藍色
37      47      白色

幾種特殊'顏色':
0     OFF
1     高亮顯示
4     underline
5     閃爍
7     反顯
8     消隱(不可見)

關於 ls 和 grep 命令的 --color[=WHEN]參數:file

--color[=WHEN]: colorize the output; WHEN can be 'never', 'auto', or 'always' (the default);

always和auto的區別:

always 會在任何狀況下都給匹配到的字符加上顏色標記;
auto 只給最後一個管道符匹配到的字符加上顏色標記;

簡單示例:grep

# vim /etc/bashrc

PS1="\e[32;1m[\u@\h \W]\\$\e[0m "

# source /etc/bashrc
相關文章
相關標籤/搜索