[root@localhost ~]# echo $PS1
[\u@\h \W]$
\u 代表当前登录的用户
\h 代表当前主机的主机名
\W 代表当前的目录
0表示默认字体,1表示加粗,4在字体下方加下划线 5 闪烁 7 代表突出显示
31-37 字体颜色
40-47 表示背景颜色
echo 'PS1="[\e[1;35m][\u@\h \W]\$[\e[0m]"' >> /etc/profile.d/ps.sh #永久生效

1.了解PS1

  PS1是Linux终端用户的一个环境变量,用来定义命令行提示符的参数。
  在终端输入命令:

# echo $PS1

  可得到当前PS1的定义值:

PS1='[\u@\h \W]\$ '

  PS1的常用参数以及含义:

  \d :代表日期,格式为weekday month date,例如:"Mon Aug 1"

  \H :完整的主机名称

  \h :仅取主机名中的第一个名字

  \t :显示时间为24小时格式,如:HH:MM:SS

  \T :显示时间为12小时格式

  \A :显示时间为24小时格式:HH:MM

  \u :当前用户的账号名称

  \v :BASH的版本信息

  \w :完整的工作目录名称

  \W :利用basename取得工作目录名称,只显示最后一个目录名

  # :下达的第几个命令

  $ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $

  所以linux默认的命令行提示信息的格式
   PS1='[\u@\h \W]$ ' 的意思就是:[当前用户的账号名称@主机名的第一个名字 工作目录的最后一层目录名]#

2.颜色设置参数

  在PS1中设置字符颜色的格式为:[\e[F;Bm]........[\e[0m],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,[\e[0m]作为颜色设定的结束。

  颜色对照表:

    F B

    30 40 黑色

    31 41 红色

    32 42 绿色

    33 43 黄色

    34 44 蓝色

    35 45 紫红色

    36 46 青蓝色

    37 47 白色

   只需将对应数字套入设置格式中即可。
  比如要设置命令行的格式为绿字黑底([\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\]]\\$ "

  但注意这样的设置只是临时性的.

3.修改.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

  即可立即并永久生效了。

注: 本知识点来自于原作者博文《修改linux终端命令行颜色》,并做了些改进.感谢作者依旧淡然的分享.