以下内容来自ubuntu系统修改终端提示符及设置颜色高亮
,为了方便以后查阅,所以在这里保存一下。侵删
最近在使用的时候发现在进入到某个文件夹目录比较深的层次后,终端提示的绝对路径很长,这样给人的感觉很不习惯,在这里给大家介绍下如何修改终端的提示,顺便介绍下提示符的颜色:
PS1变量简介
PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。
可以使用 man bash命令查看bash手册,找到该变量支持的特殊字符,以及这些特殊字符的意义:
\d:#代表日期,格式为weekday month date,例如:“Mon Aug 1”
\H:#完整的主机名称。
\h:#仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t:#显示时间为24小时格式,如:HH:MM:SS
\T:#显示时间为12小时格式
\A:#显示时间为24小时格式:HH:MM
\u:#当前用户的账号名称
\v:#BASH的版本信息
\w:#完整的工作目录名称。家目录会以 ~代替
\W:#利用basename取得工作目录名称,所以只会列出最后一个目录
#:#下达的第几个命令
$:#提示字符,如果是root时,提示符为:# ,普通用户则为:$
上面的都只是预备知识。。。正式进入主题:
修改终端提示符:
查看默认提示符设置
$ echo $PS1
应该会显示:[\e]0;\u@\h:\w\a]KaTeX parse error: Expected '}', got 'EOF' at end of input: …ebian_chroot:+(debian_chroot)}\u@\h:\w$
修改默认设置,将如下命令添加到当前登录用户的~/.bashrc文件中,然后使用source使其生效。
$ vi~/.bashrc
#在文件最后添加如下设置
export PS1="[\u@\h \W] $ " //注意这里只是个格式,具体每部分什么意思看下面:
$ source ~/.bashrc //使其设置生效
颜色设置
在PS1中设置字符序列颜色的格式为:[\e[F;Bm]
其中“F”为字体颜色,编号3037;“B”为背景色,编号4047。
下面看下颜色表:
前景背景 颜色
------------------------
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
效果控制代码:
代码 意义
-------------------------
0 OFF
1 高亮显示
4 underline
5 闪烁
7 反白显示
8 不可见
修改提示符颜色示例
$ PS1="[\e[32m]###[\e[1;31m]\u@[\e[36m]\h \w]$[\e[m]" //对应一下就知道每部分代表什么意思。注意里面有一些空格不要输错
说明:
1、‘[\e[32m]’用来设置‘###’的颜色为绿色,###就是显示现在运行的是第几条命令
2、‘[\e[31m]’设置‘\u@’的颜色为红色并高亮显示,如果指定多个数字需要用分号隔开。\u@ 就是当前登录的用户名后跟一个‘@’符号。
3、‘[\e[36m]’设置‘\h\w’为青蓝色,\h表示主机名的第一位,如果主机名为centos6.lampbo.org,那么就显示centos6;\w将显示完整的绝对路径。
4、‘$’ 提示字符,如果是root时,提示符为:# ,普通用户则为:$。
5、‘[\e[m]’使用来关闭颜色设置的。要是你没有这个的话;那么,你的命令提示符,包括你通过命令提示符输出的东西都是和最后一次的颜色设置相同。
6、为了能够在启动和登录是可以保持刚刚设置的变量,需要将PS1的设置加入到用户home目录的.bashrc文件后。
阅读完成上边的内容,就可以进行自己的设定了。
我最终设定的是:
export PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\[\e[01;32m\]\h\[\e[00m\]:\[\e[01;34m\]\w # \[\e[m\]"
显示是这样的: