首先看一下原本的设来了提示符样子。
在ubuntu feisty的~/.bashrc配置文件里面, 最初的定义是这样的。
\# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
PS1='${debian\_chroot:+($debian\_chroot)}\\\[\\033\[01;32m\\\]\\u@\\h\\\[\\033\[00m\\\]:\\\[\\033\[01;34m\\\]\\w\\\[\\033\[00m\\\]\\' ;;
\*)
PS1='${debian\_chroot:+($debian\_chroot)}\\u@\\h:\\w\\$ '
;;
esac
我们只看这一行:
PS1='${debian\_chroot:+($debian\_chroot)}\\u@\\h:\\w\\$ '
环境变量:
注释:其中${xxxx}
是个变量, \u代表目前的用户,\h代表主机名,
\w代表工作路径,\$是‘$‘(\是转义符号,可以使用诸如\n,\t之类的)
颜色代码:
\[\\033\[01;32m\\\]
是一个标准的颜色代码,由一个半中括号构成。其中第二个 ‘\[’ 后面是标准的 ANSI 颜色码。共有约二十种样式/颜色提供,详细信息请google.
我的shell提示符是这样的:
PS1='${debian\_chroot:+($debian\_chroot)}\\\[\\033\[01;32m\\\]\\u\\\[\\033\[01;35m\\\]@\\\[\\033\[01;36m\\\]\\h\\\[\\033\[00m\\\]:\\\[\\033\[01;34m\\\]\\w\\n\\\[\\033\[01;39m\\\]$?\\\[\\033\[01;38m\\\]\\$
’
具体意义是:当前的username由01;32m定义—绿色,同理@用红色,主机名用另一种颜色展示.然后显示当前目录并换行(之所以换行是因为有些目录很长),然后显示上一次操作的结果.1,2,3等可能表示一些常规的错误或者失败,具体的意义还不清楚.
[$?返回上一次操作的返回码,0表示成功]
该文于2007-10-10被赛迪网发布,遂被多处引用.但作者居然赫然写着:sixth.
TNND,看来得写个版权声明了.