linux 个性化设置shell提示
1.linux 用户登录过程中 相关文件执行顺序:
/etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → [/etc/bashrc]
2.使用PS1 改变shell命令提示符和颜色
默认的PS1(可通过echo $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时,提示符为:# ,普通用户则为:$
3.颜色设置
PS1中常用的颜色格式为:\[\e[F;Bm\],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47
颜色如下:
0 重新设置属性到缺省设置
1 设置粗体
2 设置一半亮度(模拟彩色显示器的颜色)
4 设置下划线(模拟彩色显示器的颜色)
5 设置闪烁
7 设置反向图象
22 设置一般密度
24 关闭下划线
25 关闭闪烁
27 关闭反向图象
30 设置黑色前景
31 设置红色前景
32 设置绿色前景
33 设置黄色前景
34 设置蓝色前景
35 设置紫色前景
36 设置青色前景
37 设置白色前景
38 在缺省的前景颜色上设置下划线
39 在缺省的前景颜色上关闭下划线
40 设置黑色背景
41 设置红色背景
42 设置绿色背景
43 设置黄色背景
44 设置蓝色背景
45 设置紫色背景
46 设置青色背景
47 设置白色背景
49 设置缺省黑色背景
其他有趣的代码还有:
\033[2J 清除屏幕
\033[0q 关闭所有的键盘指示灯
\033[1q 设置“滚动锁定”指示灯 (Scroll Lock)
\033[2q 设置“数值锁定”指示灯 (Num Lock)
\033[3q 设置“大写锁定”指示灯 (Caps Lock)
\033[15:40H 把关闭移动到第15行,40列
\007 发蜂鸣生beep
4.设置shell提示符颜色,可以在全局shell生效,也可以为单个用户设置,取决于在那个bashrc中
下面为了区分root用户和普通用户,我在/etc/bashrc下设置
if [ $USER == "root" ]; then
export PS1='[\[\e[33;49m\]\u@\H \w]\$'
else
export PS1='[\[\e[32;49m\]\u@\H \w]\$'
fi
也可起设置多个颜色
判断root ,显示为红色,普通用户为绿色,并记录path
if [ $USER == "root" ];then
PS1='[\[\e[31m\]\u\[\e[m\]@\[\e[33m\]\H \[\e[m\]\w]\$'
else
PS1='[\[\e[32m\]\u\[\e[m\]@\[\e[33m\]\H \[\e[m\]\w]\$'
fi
还可以记录命令条数
if [ $USER == "root" ];then
PS1='\[\e[35m\]|\#|\[\e[m\][\[\e[31m\]\u\[\e[m\]@\[\e[33m\]\H \[\e[m\]\w]\$'
else
PS1='\[\e[35m\]|\#|\[\e[m\][\[\e[32m\]\u\[\e[m\]@\[\e[33m\]\H \[\e[m\]\w]\$'
fi
学习提高自己,能力证明自己,技能创造价值