PS1介紹
PS1是Linux終端用戶的一個環(huán)境變量,用來定義命令行提示符的參數(shù)
linux默認的命令行提示信息的格式
PS1='[\u@\h \W]\$ '
獲取當前PS1定義的值
[root@clone1 ~]# echo $PS1
[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[33;40m\]\h \[\e[34;40m\]\W\[\e[0m\]]\$
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用戶,提示符為 # ,普通用戶則為 $
顏色設置參數(shù)
顏色設置格式為:
\[\e[F;Bm\]...\[\e[0m\]]
其中F為字體顏色,編號30-37;
B為背景顏色,編號為40-47
[\e[0m]為設定顏色的結束符號
其中的\e[F;Bm和\e[0m就是改變終端字體顏色的部分,前者是修改顏色,后者是恢復到正常顯示。但是這時還會有問題,在提示符中回車換行不正常,導致顯示混亂,因此,除了這個修改之外,還需要將全部非打印字符用專用的 bash 轉義序列 "[" 和 "]" 括起來。這兩個序列通知 bash,被括起來的字符不占用行上空間 ,這樣就使自動換行正常。
顏色對照表
F B
30 40 黑色
31 41 紅色
32 42 綠色
33 43 黃色
34 44 藍色
35 45 紫紅色
36 46 青藍色
37 47 白色
如果需要設置特殊顯示,如高亮顯示顯示,可以將字符序列顏色的格式中\(zhòng)e[F;Bm中的F;B設置為1,即\e[1m,然后和顏色信息加配置在一起,如\e[31;40m\e[1m。
設置特殊顯示表如下:
0 OFF,關閉顏色
1 高亮顯示
4 顯示下劃線
5 閃爍顯示
7 反白顯示
8 顏色不可見
寫入配置文件
Linux登錄過程中加載配置文件順序:
/etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc]
通過在終端中執(zhí)行export命令設置的變更只對當前終端有效,重新登陸終端就會失效。如果需要永久,就需要寫到配置文件中。
將export語句寫入/etc/profile或/etc/bashrc對全部用戶生效,寫入~/.bash_profile或~/.bashrc 只對當前用戶生效。
臨時生效:
[root@clone1 ~]# export PS1='[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[33;40m\]\h \[\e[34;40m\]\W\[\e[0m\]]\$ '
永久生效:
[root@clone1 ~]# echo "export PS1='[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[33;40m\]\h \[\e[34;40m\]\W\[\e[0m\]]\$ '" >> /etc/bashrc
[root@clone1 ~]# tail -1 /etc/bashrc
export PS1='[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[33;40m\]\h \[\e[34;40m\]\W\[\e[0m\]]\$ '
[root@clone1 ~]# . /etc/bashrc