PS1
PS1就是用来设置命令提示符的环境变量
以下是PS1中可以使用的转义字符
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
\# :下达的第几个命令
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
PS1中设置字符序列颜色的格式是\[\e[F;Bm\]
,对应的取消颜色设置为\[\e[m\]
其中“F”为字体颜色编号,编号为30~37,“B”位背景颜色编号,编号为40~47
颜色表
前景 背景 颜色
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
代码 意义
0 OFF
1 高亮显示
4 underline
7 反白显示
8 不可见
来看一个例子: \[\e[31m\]
表示设置后面的字符串序列颜色为红色 \u
表示当前用户的账号名 \H
表示主机名 \[\e[m\]
表示撤销之前设置的字符串序列的颜色
注:有些嵌入式的主机可能并不支持如上的转义字符或者颜色的设置,但是ubuntu等系统一般都是支持的
PS2
一个非常长的命令可以通过在末尾加“\”使其分行显示。多行命令的默认提示符是“>”。 我们可以通过修改PS2 ,将提示符修改为”continue->” 。
PS3
Shell脚本中使用select时的提示符
PS4
set -x”用来修改跟踪输出的前缀