今天想调整以下PS1的显示,查看了很多文档后有些收获。Bash有可自定义的4类提示:
PS1 在每个命令之前显示的主提示符,因此它是每个人都不同的。 PS2 当一个命令需要更多的输入(例如,一个多行命令)中显示的辅助提示。 PS3 不是很常用。 PS4 也是不常用。
Bash中的命令行提示一般为PS1,即:(你可以在这里编辑自己喜欢的风格)
username@hostname:~$ // 其中'~'为用户主目录
转换为转义字符表达式就是:
PS1=‘\u@\h:\w\$’ \u 表示用户(username); \h 表示主机(hostname); \w 表示当前工作目录(directory); \$ 如果您不是超级用户 (非root),则插入一个 "$";如果您是超级用户(root),则显示一个 "#"。
以上是常见的,也是最有价值的信息。当然,还有其他的转义字符:
1 \[ 这个字符应该出现在不占位转义字符(如颜色转义字符)之前,它使bash能够正确计算自动换行; \] 这个字符应该出现在不占位转义字符(如颜色转义字符)之后; \e ASCII转义字符序列开始(也可以键入 \033); \a ASCII响铃字符(也可以键入 \007); \d "Wed Sep 06"格式的日期; \H 主机的全称(如 "mybox.mydomain.com"); \j 在此shell中通过按 ^Z挂起的进程数; \l 此shell的终端设备名 (如"ttyp4"); \n 换行符; \r 回车符; \s shell的名称(如 "bash"); \t 24小时制时间(如 "23:01:01"); \T 12小时制时间(如 "11:01:01"); \@ 带有 am/pm的 12小时制时间; \v bash的版本(如 2.04); \V Bash版本(包括补丁级别) ?/td>; \W 当前工作目录的“基名 (basename)”(如 "drobbins"); \! 当前命令在历史缓冲区中的位置; \# 命令编号(只要您键入内容,它就会在每次提示时累加); \xxx 插 入一个用三位数 xxx(用零代替未使用的数字,如 "/007")表示的 ASCII 字符; \\ 反斜 杠。
字体颜色的配置为:
30m==黑色; 31m==红色; 32m==绿色; 33m==黄色; 34m==蓝色; 35m==洋红; 36m==青色; 37m==白色。
如果想配置背景色,只需要每种颜色数字加10即:
40m==黑色; 41m==红色; 42m==绿色; 43m==黄色; 44m==蓝色; 45m==洋红 ; 46m==青色; 47m==白色。
其他功能数字有:
0==OFF 1==高亮显示(我使用的就是高亮) 4==underline 5==闪烁 7==反白显示 8==不可见
在用户主目录中,存在 .bashrc(注意前置点) 配置文件,其中有对PS1的配置表达式。这是我在 Debian-8.3中修改后的结果:
PS1='\[\033[1;35m\]\u@\h:\[\033[1;33m\]\w\[\033[1;35m\]\$' // 为了便于理解,有一部分无关项被我去掉了 设置用户名(\u)为高亮(),洋红(35m); 因为没设置主机名(\h),它继承了用户名的设置; 然后设置目录(\w)为高亮(),黄色(33m); 最后将$又改回高亮和洋红。
至此, 终端的配置结束。