衆所周知,Linux命令行是系統管理員管理Linux的重要手段,咱們管理Linux,首先要面對的就是Linux命令行提示符。編程
Linux命令行結尾的提示符有「#」和「$」兩種不一樣的符號,以下所示:bash
[root@oldboy ~]# #<==這是超級管理員root用戶對應的命令行。運維
[oldboy@oldboy ~]$ #<==這是普通用戶oldboy對應的命令行。ide
其中:學習
1)#號,是使用超級用戶root登陸後的命令行結尾提示符,而$號是使用普通用戶登陸後的命令行結尾提示符。測試
2)超級用戶具備管理系統的全部權限,普通用戶的權限比較小,只能進行基本的系統信息查看等操做,沒法更改系統配置和管理服務。
字體
3)命令行提示符@前面的字符表明當前登陸的用戶(可用whoami查詢),@後面的爲主機名(可用hostname查詢),~所在的位置是窗口當前用戶所在的路徑。示例以下:
spa
[oldboy@oldboy ~]$ #<==@前的oldboy爲當前用戶, @後的oldboy爲主機名,此處的~表示當前目錄,即家目錄。命令行
4)Linux命令提示符由PS1環境變量控制。示例以下:orm
[root@oldboy ~]# set|grep PS1 #<==注意PS1是大寫的。
這裏的PS1='[\u@\h \W]\$ ',能夠經過全局配置文件/etc/bashrc或/etc/profile中進行按需配置和調整。
2.PS1變量知識說明
Linux系統Bash命令行的提示符是由一個叫作PS1的系統環境變量控制的。PS1對應的知識見表1。
學習Linux和作Linux運維工做壓力都很大,你們夥不放設置下顏色變化,調整下心情,減輕運維壓力,其次,也能夠將測試環境提示符的顏色和正式環境分開,以避免誤操做正式環境。
在變量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 |
白色 |
例如:將命令行字體調整爲×××,背景和大背景同樣的顏色。
核心內容字符部分爲:PS1='[\[\e[33;40m\]\u@\h \W]# '
怎麼樣?不錯吧?
固然還有更舒服的配置,老男孩喜歡綠色,不喜歡×××,由於太黃了。哈哈。
對應變量是PS1='\[\e[32;1m\][\u@\h \W]\$ \[\e[0m\]'
有關Bash字體及背景色的詳細講解,讀者能夠參考《跟老男孩學習Linux運維:Shell編程實戰》的第13章有詳細講解。
咱們經過命令行管理Linux時,常常會切換不一樣的路徑,此時輸入pwd命令就能夠知道當前的路徑是啥。
其實,在系統中使用Bash命令行就會自動顯示用戶當前所在的路徑,可是默認狀況下這個路徑顯示不全,下面的範例將會帶領讀者配置在命令行直接顯示當前用戶的完整路徑。
[root@oldboy ~]# echo $PS1 #<==打印超級管理員對應的PS1值。
[\u@\h \W]\$ #<== @是一個分隔符,和郵箱地址中的@做用相似。
可修改PS1變量對應的值,來讓命令行顯示全路徑:
[root@oldboy ~]# PS1='[\u@\h \w]\$ ' #<==\w小寫的w
[root@oldboy ~]# cd /usr/local/
[root@oldboy /usr/local]# #<==能夠看到已是全路徑了。
[root@oldboy ~]# PS1='[\u@\h \w]\$ ' #<==將默認的\W改成\w(小寫w),僅臨時生效。
[root@oldboy ~]# cd /etc/sysconfig #<==切換目錄實驗。
[root@oldboy /etc/sysconfig]# #<==能夠看到路徑是全路徑了。
上面的方法只是臨時性的,若要讓PS1變量永久生效,可採用以下配置方法:
編輯/etc/bashrc文件,找到符合下面內容的一行(大約在第36行),將內容中的大寫的W改成小寫w,便可讓變量永久生效。也就是將:
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
改成下面內容,保存並退出。
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \w]\\$ "
最後,註銷,從新登陸系統或直接執行source /etc/bashrc使得修改的信息生效。
調整方法爲:PS1='[\[\e[33;40m\]\u@\h \w \t]# ',就是\t就好了。