要想修改終端的顏色,可使用修改PS1環境變量的方式,也能夠經過命令setterm來進行設置。html
1、PS1linux
轉自:修改linux終端命令行顏色shell
1.PS1bash
要修改linux終端命令行顏色,咱們須要用到PS1,PS1是Linux終端用戶的一個環境變量,用來講明命令行提示符的設置。在終端輸入命令:#set,便可在輸出中找到關於PS1的定義以下:post
PS1='[\u@\h \W]\$ '字體
PS1的定義中個經常使用的參數的含義以下:url
\d :#表明日期,格式爲weekday month date,例如:"Mon Aug 1" spa
\H :#完整的主機名稱 命令行
\h :#僅取主機的第一個名字 htm
\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 白色
根據顏色表,套用入字符顏色設置格式中,就能夠對linux終端命令行顏色進行個性化設置了。好比要設置命令行的格式爲綠字黑底,顯示當前用戶的帳號名稱、主機的第一個名字、完整的當前工做目錄名稱、24小時格式時間,就可使用以下的命令:
#PS1='[\[\e[32;40m\]\u@\h \w \t]$ '
3.修改.bashrc文件(也能夠經過修改\etc\profile文件來實現)
經過上面的設置只能改變當前終端的命令行格式,關閉這個終端,在從新打開的一個終端中命令行格式又會恢復到默認的形式。想要永久性的改變終端命令行格式,須要修改.bashrc文件。
使用命令:#cd /
#ls -l -a
就能看到.bashrc這個文件。使用命令
#gedit .bashrc
在.bashrc文件中加入
PS1="[\[\e[30;47m\]\u@\h \W \t]$"
這條語句,而後保存,就能夠永久性的改變終端命令行格式了。
修改完成後,必定要使用source 命令從新加載配置文件
二、經過setterm方式設置
能夠經過setterm -foreground 設置前景色
setterm -background 設置背景色
可是每次都要設置比較麻煩。
爲了使用方便,編寫了一個shell腳本將兩行命令放到termColor.sh文件中。
每次執行sh termColor.sh命令就能夠修改前景色和背景色。可是每次執行了ls命令後,顏色又變成了沒有設置時的樣子。有些無奈了,仍是用第一種方式吧。
另外,須要說明的是,每次都須要使用sh來執行腳本。使用ls -l命令查看,這個termColor文件沒有可執行的權限(可執行的位置-),說明不是可執行文件。使用chmod修改其爲可執行文件後,執行運行./termColor.sh就能夠執行了。