Shell脚本字体颜色

[root@web01 scripts]# man console_codes
echo -e "\033[背景颜色;字体颜色m字符串\033[0m",例:echo -e "\033[41;36m something here \033[0m"
注: 1、背景颜色和字体颜色之间是英文的“;”
   2、文字颜色后面有个m
   3、字符串前后可以没有空格,如果有的话,输出也有空格(echo -e "\033[31mhello\033[0m")
echo -e "\033[44;31;5m ME \033[0m COOL"
以上命令设置背景为蓝色,红色字体,闪烁光标,输出字符“ME”,0\33[0m重新设置屏幕到缺省设置,输出字符 COOL,“-e”是命令 echo 的一个可选项,它用于激活特殊字符的解析器。“\033”引导非常规字符序列。“m”意味着设置属性然后结束非常规字符序列,这个例子里真正有效的字符是 “44;37;5” 和“0",
修改“44;37;5”可以生成不同颜色的组合,数值和编码的前后顺序没有关系

 

下面是相应的字和背景颜色
字体颜色范围:30—–37                                 背景颜色范围:40—–47
echo -e “\033[30m 黑色字 \033[0m”               echo -e “\033[40m 黑底 \033[0m”
echo -e “\033[31m 红色字 \033[0m”               echo -e “\033[41m 红底 \033[0m”
echo -e “\033[32m 绿色字 \033[0m”               echo -e “\033[42m 绿底 \033[0m”
echo -e “\033[33m 黄色字 \033[0m”               echo -e “\033[43m 黄底 \033[0m”
echo -e “\033[34m 蓝色字 \033[0m”               echo -e “\033[44m 蓝底 \033[0m”
echo -e “\033[35m 紫色字 \033[0m”               echo -e “\033[45m 紫底 \033[0m”
echo -e “\033[36m 天蓝字 \033[0m”               echo -e “\033[46m 天蓝底 \033[0m”
echo -e “\033[37m 白色字 \033[0m”           echo -e “\033[47m 白底 \033[0m”
  
面控制选项说明
\033[nA         #光标上移n行                          \033[0m    #关闭所有属性
\033[nB        #光标下移n行                           \033[1m   #设置高亮度
\033[nC        #光标右移n行                           \033[4m   #下划线
\033[nD        #光标左移n行                           \033[5m   #闪烁光标
\033[y;xH     #设置光标位置                          \033[7m   #反显
\033[2J         #清屏                                     \033[8m   #消隐
\033[K          #清除从光标到行尾的内容
\033[s          #保存光标位置
\033[u          #恢复光标位置  
\033[?25l     #隐藏光标  
\033[?25h    #显示光标

字符串输出颜色,有时候关键地方需要醒目,颜色是最好的方式:
字体颜色  
30:黑         
31:红       
32:绿           
33:黄        
34:蓝色       
35:紫色          
36:深绿       
37:白色     

字体背景颜色
40:黑
41:深红
42:绿
43:黄
44:蓝
45:紫 
46:深绿 
47:白色

字体显示方式
0:终端默认设置 
1:高亮显示
4:带下划线 
5:字体闪烁
7:反白显示 
8:隐藏

格式:
\033[1;31;40m   # 1 是显示方式,可选;31 是字体颜色;40m 是字体背景颜色。
\033[0m             # 恢复终端默认颜色,即取消颜色设置。

示例:
#!/bin/bash
# 字体颜色
for i in {31..37}; do
echo -e "\033[$i;40mHello world!\033[0m" done
# 背景颜色
for i in {41..47}; do
echo -e "\033[47;${i}mHello world!\033[0m" done
# 显示方式
for i in {1..8}; do
echo -e "\033[$i;31;40mHello world!\033[0m" done

给ls或ll命令添加颜色
[root@web01 ~]# cat .bash_profile

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

#添加以下内容
export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;35:*.cmd=01;35:*.exe=01;35:*.com=01;35:*.btm=01;35:*.bat=01;35:*.sh=01;35:*.csh=01;35:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:'

[root@web01 ~]# source .bash_profile


  

posted @ 2017-12-14 15:36  風£飛  阅读(658)  评论(0编辑  收藏  举报