通过PS1设置命令行提示符

通过PS1变量,设置Linux Shell提示符显示
当设置为:

if [ $(whoami) = 'root' ]; then export PS1=`whoami`@`hostname`:'$PWD#' else export PS1=`whoami`@`hostname`:'$PWD>' fi

显示为:
root@DDP-QX-J1205:/root# ## 或 uniyun@DDP-QX-J1205:/home/uniyun#

设置为:export PS1='[\u@\h \W]\$'显示为:
[root@DDP-QX-J1205 ~]#

注: 以上内容无颜色
以下为设置颜色的方式
颜色设置参数
在PS1中设置字符颜色的格式为:[\e[F; Bm]…[\e[0m],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,[\e[0m]作为颜色设定的结束。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LdCZbNx1-1592748985199)(https://note.youdao.com/yws/res/7779/E55213D99A68450E91A18DDFE0FFAD13)]
只需将对应数字套入设置格式中即可。
比如要设置命令行的格式为绿字黑底([\e[32; 40m]),显示当前用户的账号名称(\u)、主机的第一个名字(\h)、完整的当前工作目录名称(\w)、24小时格式时间(\t),可以直接在命令行键入如下命令:
# PS1='[\[\e[32; 40m\]\u@\h \w \t]$ \[\e[0m\]'

经过多次测试后,最终确定了一个适合我自己的格式:
# PS1="\[\e[37; 40m\][\[\e[32; 40m\]\u\[\e[37; 40m\]@\h \[\e[36; 40m\]\w\[\e[0m\]]\\$ "

但注意这样的设置只是临时性的.
修改.bashrc文件,永久保存命令行样式.
上面的设置的作用域只有当前终端的登陆有效,关闭终端或退出登录即刻失效。要想永久性的保存设置,需要修改.bashrc配置文件。
键入命令:
1 # cd 2 # ls -la

现在可以看到.bashrc这个文件。
编辑.bashrc:
# vim .bashrc

加入这一行:
PS1="\[\e[37; 40m\][\[\e[32; 40m\]\u\[\e[37; 40m\]@\h \[\e[36; 40m\]\w\[\e[0m\]]\\$ "

保存退出。
重新加载bash配置文件:
# source .bashrc

【通过PS1设置命令行提示符】即可立即并永久生效了。

    推荐阅读