修改Linux的命令提示符及其顏色
[username@host 工作目錄
其實,我們可以為自己訂制個性化的命令行提示符,Linux系統提示符是用系統變量PS1來定義的,只要按規則修改PS1系統變量的值隨意修改命令行提示符。
?
通過命令echo $PS1查看PS1的值,即PS1="[\u@\h: \w \t]\$ "。修改PS1的值後,重啟系統或者重新登錄後,PS1的值都會變回默認的值。如果希望對用戶永久保存PS1的值,可以通過修改用戶配置文件.profile,把系統變量PS1的新值重新導入:
命令提示符默認是$PS1,註:“P,S”是大寫
[root@centos6 ~]# echo $PS1
[\u@\h \W]\$
除了以上默認的符號外,還有以下各個特殊符號代表的意義
\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時,提示符為:# ,普通用戶則為:$
?
比如,給命令提示符加個24小時格式的時間,並為提示符加上顏色。
註:在PS1中設置字符序列顏色的格式為:[\e[F;Bm"] 其中“F“為字體顏色,編號為30-37,“B”為背景顏色,編號為40-47。
?
接下來上顏色咯
圖 中提示符變為紫色,輸出的字體保持不變,根據個人愛好設置即可。
?
顏色信息表
Font | background | color |
---|---|---|
30 | 40 | 黑色 |
31 | 41 | 紅色 |
32 | 42 | 綠色 |
33 | 43 | ××× |
34 | 44 | 藍色 |
35 | 45 | 紫紅色 |
36 | 46 | 青藍色 |
37 | 47 | 白色 |
?
設置重啟後不失效
PS1命令可以設置當前shell的命令提示符,是shell中的一個功能,但是shell也是一個程序,有進程的生命周期,他會隨著進程生命周期結束而將保存在內存中的數據丟失,如果想保存配置,需要將賦值保存在文件中,shell環境配置文件分文兩類:
profile類:為交互式登錄的shell提供配置,交互式登錄為直接通過某終輸入賬號密碼登錄打開的shell進程或使用su - USERNAME執行的登錄切換;他的讀取次序為: /etc/profile-->/etc/profile.d/*-->/bash.profile-->/.bahrc-->/etc/bashrc
bashrc類:為非交互式登陸的shell提供配置,非交互為su USERNAME執行的用戶登錄切換,讀取次序為:~/.bashrc -->/etc/bashrc -->/etc/profile.d/
如果想要設置終端提示符的樣式只要把$PS1在~/.bahrc指定即可,我的設置如下:
?
vim.~/.bashrc
export PS1
效果:
?
export命令用於將shell變量輸出為環境變量,或者將shell函數輸出為環境變量。
一個變量創建時,它不會自動地為在它之後創建的shell進程所知。而命令export可以向後面的shell傳遞變量的值。當一個shell腳本調用並執 行時,它不會自動得到原為腳本(調用者)裏定義的變量的訪問權,除非這些變量已經被顯式地設置為可用。export命令可以用於傳遞一個或多個變量的值到任何後繼腳本。
?
修改Linux的命令提示符及其顏色