終端提示符的特征由系統環境變量PS1定義。通過命令``echo $PS1''查看當前設置。
PS1的值由一系列靜態文本或\和轉義字符序列組成,如:
PS1="\u@\H \w$ "
比較有用的轉義序列有:
\e ASCII轉義字符
\h 主機名
\H 完整的主機名
\l 終端設備名
\t 24小時制時間
\T 12小時制時間
\u 用戶名
\w 當前工作目錄(絕對路徑)
\w 當前工作目錄(basename)
\! 當前命令在歷史緩沖區的位置
\$ 如果當前用戶是super user,則插入字符#;否則插入字符$
\[ 出現在不移動光標的字符序列之前
\] 出現在非打印字符之後
總是面對黑低白字的屏幕不免讓人生厭,我們可以通過設置PS1變量使提示符成為彩色。在PS1中設置字符序列顏色的格式為:
\[\e[F;Bm\]
其中``F''為字體顏色,編號30~37;``B''為背景色,編號40~47.
可通過``\e[0m''關閉顏色輸出;特別的,當B為1時,將顯示加亮加粗的文字。
我認為這些就足夠了。是時候動手定制一番了。現帖出我的設置:
if [ $TERM = 'linux' ]; then
export PS1="[\[\e[36;1m\]\u@\h \[\e[31;1m\]\w\[\e[32;1m\]]> "
zhcon --utf8
clear
elif [ $TERM = "xterm" ]; then
export PS1="[\[\e[31;1m\]\w\e[0m]> "
fi
-------------------