Sunday, May 18, 2008

修改Linux操作系统终端提示符(转载)

终端提示符的特征由系统环境变量PS1定义。通过命令``echo $PS1''查看当前设置。

PS1的值由一系列静态文本或\和转义字符序列组成,如:

PS1="\u@\H \w$ "

比较有用的转义序列有:

\e ASCII转义字符

\h 主机名

\H 完整的主机名

\l 终端设备名

\t 24小时制时间

\T 12小时制时间

\u 用户名

\w 当前工作目录(绝对路径)

\W 当前工作目录(basename)

\! 当前命令在历史缓冲区的位置

\$ 如果当前用户是super user,则插入字符#;否则插入字符$

\[ 出现在不移动光标的字符序列之前

\] 出现在非打印字符之后

修改使用命令~ $  export PS1="\u@\H: \w\$" 

总是面对黑低白字的屏幕不免让人生厌,我们可以通过设置PS1变量使提示符成为彩色。在PS1中设置字符序列颜色的格式为:

\[\e[F;Bm\]

其中``F''为字体颜色,编号30~37;``B''为背景色,编号40~47。

可通过``\e[0m''关闭颜色输出;特别的,当B为1时,将显示加亮加粗的文字。

举例Example:

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 -------------------

No comments: