Linux自定义Shell终端命令提示符及颜色PS1
登录Linux系统后,默认的系统命令提示符毫无个性,当我们在操作多个系统时无法快速明显辨别生产和测试环境,从而可能会导致误操作。其实我们可以通过修改PS1变量实现个性的提示符格式,避免出现这种低级错误。
#CentOS默认提示符 [root@localhost ~]# #Ubuntu默认提示符 root@ubuntu1804:~#
输出一下PS1变量
[root@centos7-9-1 ~]# echo $PS1 [\u@\h \W]\$
这里包括了用户名、@、主机名第一个名字、最后一个目录、$提示字符,如果是root,提示符#,普通用户为$
参数 | 含义 |
\d | 代表日期,格式为weekday month date |
\H | 完整的主机名称 |
\h | 仅取主机的第一个名字 |
\t | 显示时间为24小时格式,如HHMMSS |
\T | 显示时间为12小时 |
\A | 显示时间为24小时格式HHMM |
\u | 当前账户的名称 |
\v | BASH的版本信息 |
\w | 完整的工作目录名称,家目录会以~显示 |
\W | 列出最后一个目录 |
\# | 下达的第几个命令 |
\$ | 提示字符,如果是root,提示符为#,普通用户则为$ |
颜色值设置:PS1中设置字符颜色的格式为:[e[F;Bm],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47。颜色表如下:
F前影色 | B背景色 | 说明 |
30 | 40 | 黑色 |
31 | 41 | 红色 |
32 | 42 | 绿色 |
33 | 43 | 黄色 |
34 | 44 | 蓝色 |
35 | 45 | 紫红色 |
36 | 46 | 青蓝色 |
37 | 47 | 白色 |
修改一下PS1变量,但是这个只是临时生效的,开启一个新的窗口就没有了。
[root@centos7-9-1 ~]# PS1='[\e[32;1m\u@\H \w \t\e[0m]\$' [root@centos7-9-1.kevinsir.com ~ 17:28:22]#
如果想让他永久生效的话需要把它添加到环境变量里。
echo "PS1='[\e[32;1m\u@\H \w \t\e[0m]\$'" >> .bashrc
最终显示效果: