要想修改終端的顏色袍祖,可以使用修改PS1環(huán)境變量的方式,也可以通過命令setterm來進行設置浅辙。
一扭弧、PS1
1.PS1
要修改linux終端命令行顏色,我們需要用到PS1记舆,PS1是Linux終端用戶的一個環(huán)境變量鸽捻,用來說明命令行提示符的設置。在終端輸入命令:#set泽腮,即可在輸出中找到關于PS1的定義如下:
PS1='[\u@\h \W]$ '
PS1的定義中個常用的參數(shù)的含義如下:
\d :#代表日期御蒲,格式為weekday month date,例如:"Mon Aug 1"
\H :#完整的主機名稱
\h :#僅取主機的第一個名字
\t :#顯示時間為24小時格式盛正,如:HH:MM:SS
\T :#顯示時間為12小時格式
\A :#顯示時間為24小時格式:HH:MM
\u :#當前用戶的賬號名稱
\v :#BASH的版本信息
\w :#完整的工作目錄名稱
\W :#利用basename取得工作目錄名稱删咱,所以只會列出最后一個目錄
# :#下達的第幾個命令
$ :#提示字符屑埋,如果是root時豪筝,提示符為:# ,普通用戶則為:$
由此摘能,我們可知linux默認的命令行提示信息為:[當前用戶的賬號名稱@主機的第一個名字 工作目錄的最后一項]#
2.顏色的設置
在PS1中設置字符顏色的格式為:[\e[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 白色
根據(jù)顏色表逻恐,套用入字符顏色設置格式中像吻,就可以對linux終端命令行顏色進行個性化設置了。比如要設置命令行的格式為綠字黑底复隆,顯示當前用戶的賬號名稱拨匆、主機的第一個名字、完整的當前工作目錄名稱挽拂、24小時格式時間惭每,就可以使用如下的命令:
PS1='[[\e[32;40m]\u@\h \w \t]$ '
3.修改.bashrc文件(也可以通過修改\etc\profile文件來實現(xiàn))
通過上面的設置只能改變當前終端的命令行格式,關閉這個終端亏栈,在重新打開的一個終端中命令行格式又會恢復到默認的形式台腥。想要永久性的改變終端命令行格式,需要修改.bashrc文件绒北。
使用命令:#cd /
ls -l -a
就能看到.bashrc這個文件黎侈。使用命令
gedit .bashrc
在.bashrc文件中加入
PS1="[[\e[30;47m]\u@\h \W \t]$"
這條語句,然后保存闷游,就可以永久性的改變終端命令行格式了蜓竹。
修改完成后箕母,一定要使用source 命令重新加載配置文件
2、通過setterm方式設置
可以通過setterm -foreground 設置前景色
setterm -background 設置背景色
但是每次都要設置比較麻煩俱济。
為了使用方便嘶是,編寫了一個shell腳本將兩行命令放到termColor.sh文件中。
每次執(zhí)行sh termColor.sh命令就可以修改前景色和背景色蛛碌。但是每次執(zhí)行了ls命令后聂喇,顏色又變成了沒有設置時的樣子。有些無奈了蔚携,還是用第一種方式吧希太。
另外,需要說明的是酝蜒,每次都需要使用sh來執(zhí)行腳本誊辉。使用ls -l命令查看,這個termColor文件沒有可執(zhí)行的權限(可執(zhí)行的位置-)亡脑,說明不是可執(zhí)行文件堕澄。使用chmod修改其為可執(zhí)行文件后,執(zhí)行運行./termColor.sh就可以執(zhí)行了霉咨。