终端可以说是在Linux的使用中最常用到的工具了,通过设置PS1,PS2,PS3,PS4这四个环境变量,我们就可以个性化定制终端的提示符。
一、PS1—默认的交互提示符
默认情况下PS1为”\s-\v\$”,显示为
-bash-3.2$
通过改变PS1,就可以在提示符显示一些对我们有用的信息,如用户名、工作目录、系统时间等
-bash-3.2$export PS1="\u@\h \w \$"
sunshine@0101 ~ $
sunshine@0101 ~ $
其中\u为当前用户名,\h为主机名,\w为当前工作目录的绝对路径(当在个人的主目录下时显示的是~)
以下是其他转义字符代表的信息
\h--主机名
\u--用户名
\w--当前工作目录的绝对路径 如:/usr/bin
\W--当前工作目录的基址名 如上例中的bin
\t--当前的系统时间:HH:MM:SS(24小时制)
\@--当前的系统时间,12小时制, 如:07:14 PM
\d--如“Wed May 28”格式的日期
\n--换行符
\$?--上以命令执行后的返回值,成功执行返回0,否则返回一个非零的数
\!--该条命令在历史命令中的编号
\#--该条命令在这个shell中的编号
\u--用户名
\w--当前工作目录的绝对路径 如:/usr/bin
\W--当前工作目录的基址名 如上例中的bin
\t--当前的系统时间:HH:MM:SS(24小时制)
\@--当前的系统时间,12小时制, 如:07:14 PM
\d--如“Wed May 28”格式的日期
\n--换行符
\$?--上以命令执行后的返回值,成功执行返回0,否则返回一个非零的数
\!--该条命令在历史命令中的编号
\#--该条命令在这个shell中的编号
下面举例说明:(下面用<CR>代表回车键)
-bash-3.2$
export
PS1=
"\u@\h \w \t \n\$ "
<CR
>
sunshine @0101 ~ 19: 40: 50
$ export PS1= "\u@\h \w \@ \$ " <CR > (由于上面设置的PS1变量中含有\n,所以$提示符显示到了第二行 )
sunshine @0101 ~ 07: 40 PM $
sunshine @0101 ~ 19: 40: 50
$ export PS1= "\u@\h \w \@ \$ " <CR > (由于上面设置的PS1变量中含有\n,所以$提示符显示到了第二行 )
sunshine @0101 ~ 07: 40 PM $
下面是我自己使用的终端提示符:
你们会发现,我的提示符是有颜色的,而按照上面设置的颜色是白色的(系统默认的颜色),那么颜色是怎么设置的呢?
下面的设置可以将提示符显示为蓝色:
sunshine
@0101 ~ 07:
40 PM $
export
PS1=
"\e[0;34m\u@0101 \@ \$ \e[m"
其中
\e[ - 表示颜色指定的开始(当然,\e亦可以用\033替代)
x;ym - 表示颜色的代码
\e[m - 表示颜色指定的结束
x;ym - 表示颜色的代码
\e[m - 表示颜色指定的结束
颜色代码表:
• 黑色 0;30
• 红色 0;31
• 绿色 0;32
• 棕色 0;33
• 蓝色 0;34
• 紫色 0;35
• 蓝绿色 0;36