常用的 bash shell提示符有PS1(primary prompt string)和PS2(secondary prompt string)。PS1是在提示能够输入下一个命令之前打出来的提示字符串。PS2是当前命令的参数还没有输入完毕时发生换行时打出的提示字符串。
使用命令:
echo "PS1 is $PS1";echo "PS2 is $PS2"
可以显示当前字符串的形式,设置PS1和PS2也非常简单。例如在shell中直接输入:
PS1=“\s-\v$ ”
就可以将一级提示符换为:bash-4.2
设置提示符的转义字符及其含义如下:
\a: 响铃字符 (0x07)
\d:日期,格式为 Weekday Month Date
\D{format}:使用strftime的日期格式输出日期。花括号是必须要有的,不过format可以为空,这时输出默认的本地时间格式。
\e:ASCII码形式的转义字符(0x33)
\h:主机名第一个点前的部分
\H:完整主机名
\j:当前shell所管理的作业数量
\n:换行
\r:回车
\s:shell名称
\t:24时制 HH:MM:SS 时间格式
\T: 12时制 HH:MM:SS时间格式
\@:12时制的 am/pm格式
\A:24时制的 HH:MM格式
\u:用户名
\v:bash版本号
\V:bash发行版本号
\w:当前目录的绝对路径
\W:当前目录名
\!:当前命令的历史编号
\#:当前命令的命令编号
\$:如果UID是0,则该值是'#',否则是'$'
\nnn:对应与八进制数nnn
\\:\
\[:非打印字符、控制字符序列的开始
\]:非打印字符、控制字符序列的结束