设置Linux终端字体颜色

系统启动后,环境变量加载的顺序为:/etc/profile → /etc/profile.d/*.sh → ~/.bash_profile → ~/.bashrc → /etc/bashrcshell

想要修改某用户登陆后shell字体的颜色,在~/.bashrc中修改PS1的内容便可。vim

命令提示符PS1的经常使用参数:bash

\d :日期,格式为"周 月 日",例如:"Mon Aug 1"   
\H :完整的主机名;   
\h :仅取主机的第一个名字;  
\t :24小时制的时间,如:HH:MM:SS;
\A :24小时制的时间:HH:MM; 
\T :12小时制的时间;      
\u :当前用户的用户名; 
\v :BASH的版本信息;   
\w :当前工做目录的完整路径;   
\W :当前工做目录的basename;     
\$ :提示符,若是是root时,提示符为:#,普通用户则为:$

要实现颜色显示,这里要用到转义序列;转义序列就是一个让 shell 执行一个特殊步骤的控制指令。
转义序列一般都是以ESC开头,在shell里表示为^[ ,这种表示法须要一点时间去适应,也能够用 \033 完成相同的工做(ESC的ASCII 码用十进制表示就是27,等于用八进制表示的033)。
要直接在shell里面输入转义序列须要先按CTRL-v ESC或者CRTL-v-[字体

\033[m 声明了转义序列的开始。
\033[0m 声明转义序列结束,回到默认颜色。code

PS1中设置字符颜色有两种方式,效果相同:登录

一、\e[F;Bm
二、\033[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      白色

几种特殊'颜色':
0     OFF
1     高亮显示
4     underline
5     闪烁
7     反显
8     消隐(不可见)

关于 ls 和 grep 命令的 --color[=WHEN]参数:file

--color[=WHEN]: colorize the output; WHEN can be 'never', 'auto', or 'always' (the default);

always和auto的区别:

always 会在任何状况下都给匹配到的字符加上颜色标记;
auto 只给最后一个管道符匹配到的字符加上颜色标记;

简单示例:grep

# vim /etc/bashrc

PS1="\e[32;1m[\u@\h \W]\\$\e[0m "

# source /etc/bashrc
相关文章
相关标签/搜索