Shell中的色彩处理
shell脚本中echo显示内容带颜色显示,echo显示带颜色,需要使用参数-e
格式1: echo -e “\033[背景颜色;文字颜色m 要输出的字符 \033[0m”
格式2:echo -e “\e[背景颜色;文字颜色m 要输出的字符\e[0m”
例:绿底蓝字
[root@xuegod63 ~]# echo -e "\033[42;34m hello world\033[0m"
[root@xuegod63 ~]# echo -e "\e[42;34m hello world\e[0m"
如图:
注:其中42的位置代表底色,34的位置代表的是字的颜色,0m是清除所有格式
1、字背景颜色和文字颜色之间是英文的分号";"
2、文字颜色后面有个m
3、字符串前后可以没有空格,如果有的话,输出也是同样有空格
4、echo显示带颜色,需要使用参数-e ,-e 允许对下面列出的加反斜线转义的字符进行解释.
控制选项:
\033[0m 关闭所有属性
\033[1m 设置高亮度,加粗
\033[5m 闪烁
[root@xuegod63 ~]# echo -e "\e[42;34m hello world\e[5m" #执行后,发现后期所有输出都闪烁状态,如何关闭?
[root@xuegod63 ~]# echo -e "\e[42;34m hello world\e[0m" #可以使用\033[0m 关闭所有属性
常见shell输入带颜色文字: 3x代表字的颜色,4x代表背景色
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"
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"
=======================================================
以下是自己写的一个脚本,用于查找颜色用的:
脚本下载地址:color.zip
注:如果运行提示代码有问题请转换一下编码格式,这个是在Windows系统上写的,在Linux运行需要注意一下编码转换