基本语法shell
echo "\033[41;36m something \033[0m"
能够看到 "\033[ " 是成对出现的,这是固定语法,知道就行 , 而后第一个"\033[ "后面是 41;36m , 第二个"\033[ " 后面是0m" ,具体含义下面介绍:bash
第一个"\033[字体
中括号后面能够有一个值,也能够有两个值,以分号隔开,表明着要显示的文字的背景和颜色,默认都是窗口本来的颜色。code
其中41的位置表明背景底色 ,36m的位置是表明文字的颜色 , 背景底色不加m , 文字颜色要加m orm
颜色对应的值分别以下:ci
背景的颜色范围是 40 -- 47 echo -e “\033[40;37m 黑底白字 \033[0m” echo -e “\033[41;37m 红底白字 \033[0m” echo -e “\033[42;37m 绿底白字 \033[0m” echo -e “\033[43;37m 黄底白字 \033[0m” echo -e “\033[44;37m 蓝底白字 \033[0m” echo -e “\033[45;37m 紫底白字 \033[0m” echo -e “\033[46;37m 天蓝底白字 \033[0m” echo -e “\033[47;30m 白底黑字 \033[0m” 字体的颜色范围是 30m -- 37m echo -e “\033[30m 黑色字 \033[0m” echo -e “\033[31m 红色字 \033[0m” echo -e “\033[32m 绿色字 \033[0m” echo -e “\033[33m 黄色字 \033[0m” echo -e “\033[34m 蓝色字 \033[0m” echo -e “\033[35m 紫色字 \033[0m” echo -e “\033[36m 天蓝字 \033[0m” echo -e “\033[37m 白色字 \033[0m”
---------------------------------------------------------------------------------------------------it
第二个"\033[table
后面只有一个0m, 这个是控制某些特殊显示效果的,好比显示时光标的控制、闪烁等,基本上用不到。下面列出来,以供参考:class
\33[0m 关闭全部属性 \33[1m 设置高亮度 \33[4m 下划线 \33[5m 闪烁 \33[7m 反显 \33[8m 消隐 \33[30m — \33[37m 设置前景色 \33[40m — \33[47m 设置背景色 \33[nA 光标上移n行 \33[nB 光标下移n行 \33[nC 光标右移n行 \33[nD 光标左移n行 \33[y;xH设置光标位置 \33[2J 清屏 \33[K 清除从光标到行尾的内容 \33[s 保存光标位置 \33[u 恢复光标位置 \33[?25l 隐藏光标 \33[?25h 显示光标
echo –e 参数可根据本身的系统选择,不加 –e 也能够。若是不加显示不出来,就加上,这个主要涉及到转义的问题。语法
我本身用到的部分shell以下:
#!/bin/bash text=`cat /etc/passwd` echo “\033[41;37m $text \033[0m”