Linux修改Shell命令提示符及颜 {MOD}
1. Linux登录过程中加载配置文件顺序:
/etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc]
可查看默认的~/.bashrc文件如下:
[root@~/wade/codeReview/redis-2.8.17] cat ~/.bashrc
# .bashrc
# User specific aliases and functions
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
2. Shell命令提示符及颜 {MOD}是由PS1来配置:
[root@/etc/init.d] echo $PS1
[[e[32;40m]u@w]
其中PS1常用的参数含义如下:
d :#代表日期,格式为weekday month date,例如:"Mon Aug 1"
H :#完整的主机名称
h :#仅取主机的第一个名字
:#显示时间为24小时格式,如:HH:MM:SS
T :#显示时间为12小时格式
A :#显示时间为24小时格式:HH:MM
u :#当前用户的账号名称
v :#BASH的版本信息
w :#完整的工作目录名称
W :#利用basename取得工作目录名称,所以只会列出最后一个目录
# :#下达的第几个命令
$ :#提示字符,如果是root时,提示符为:# ,普通用户则为:$
3. 颜 {MOD}值设置: PS1中设置字符颜 {MOD}的格式为:[e[F;Bm],其中“F“为字体颜 {MOD},编号为30-37,“B”为背景颜 {MOD},编号为40-47。颜 {MOD}表如下:
F B
30 40 黑 {MOD}
31 41 红 {MOD}
32 42 绿 {MOD}
33 43 黄 {MOD}
34 44 蓝 {MOD}
35 45 紫红 {MOD}
36 46 青蓝 {MOD}
37 47 白 {MOD}
根据颜 {MOD}表,套用入字符颜 {MOD}设置格式中,就可以对linux终端命令行颜 {MOD}进行个性化设置了。比如要设置命令行的格式为绿字黑底,显示当前用户的账号名称、主机的第一个名字、完整的当前工作目录名称、24小时格式时间,就可以使用如下的命令:
#PS1='[[e[32;40m]u@h w ]$ '
4. 以笔者的~/.bashrc配置为例:
[root@~]# cat ~/.bashrc
# .bashrc
# User specific aliases and functions
export PS1='[[e[32;40m]u@w]$ '
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
5. 修改完成后重新加载下~/.bashrc即可生效: