echo输出字符串显示不同颜色和背景色

  1. echo介绍

在脚本的实现过程中,在某些时候需要用到用特别颜色来提示使用都,所以就用到了echo这个功能了。

echo显示带颜色,需要使用参数-e

格式如下:

echo -e "\033[字背景颜色;文字颜色==oldboy==\033[0m"

例如:echo -e "\033[41;35m ==oldboy==\033[0m"

说明:其中的41的位置代表底纹色,36的位置是代表内容的颜色

特别提示:

1、字背景颜色和文字颜色之间是英文的“;”。

2、文字颜色后而有个m。

3、字符串内容前后可以没有空格,如果有的话,输出也是同样有空格

4、可以不设置背景颜色,例如:

echo -e "\033[35m ==oldboy==\033[0m"

  1. 字和背景颜色

man手册查看颜色man console_codes

  1. 字颜色范围:30-37

echo -e "\033[30m 黑色字oldboy trainning\033[0m"

echo -e "\033[31m 红色字oldboy trainning\033[0m"

echo -e "\033[32m 绿色字oldboy trainning\033[0m"

echo -e "\033[33m 黄色字oldboy trainning\033[0m"

echo -e "\033[34m 蓝色字oldboy trainning\033[0m"

echo -e "\033[35m 紫色字oldboy trainning\033[0m"

echo -e "\033[36m 天蓝字oldboy trainning\033[0m"

echo -e "\033[37m 白色字oldboy trainning\033[0m"

  1. 字背景颜色范围:40-47

echo -e "\033[40;37m 黑底白字oldboy trainning\033[0m"

echo -e "\033[41;37m 红底白字oldboy trainning\033[0m"

echo -e "\033[42;37m 绿底白字oldboy trainning\033[0m"

echo -e "\033[43;37m 黄底白字oldboy trainning\033[0m"

echo -e "\033[44;37m 蓝底白字oldboy trainning\033[0m"

echo -e "\033[45;37m 紫底白字oldboy trainning\033[0m"

echo -e "\033[46;37m 天蓝白字oldboy trainning\033[0m"

echo -e "\033[47;30m 白底黑字oldboy trainning\033[0m"

  1. ==ANSI控制码的说明

echo -e "\033[47;30m 白底黑字oldboy trainning\033[0m"

红色部分即为控制选项,前面的例子都是0m

\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 显示光标

  1. shell脚本

[root@nfs ~]# vi echo-color.sh

[root@nfs scripts]# cat case03.sh  

#!/bin/sh

RED_COLOR='\E[1;31m'

GREEN_COLOR='\E[1;32m'

YELLOW_COLOR='\E[1;33m'

BLUE_COLOR='\E[1;34m'

RES='\E[0m'

cat <<END

1.apple

2.pear

3.banana

4.cherry

END

read -p "pls input the fruit your like:" fruit

case "$fruit" in

    1)

      echo -e "$RED_COLOR apple $RES"

    ;;

    2)

      echo -e "$GREEN_COLOR pear $RES"

    ;;

    3)

      echo -e "$YELLOW_COLOR banana $RES"

    ;;

    4)

      echo -e "$BLUE_COLOR cherry $RES"

    ;;

    *)

      echo "pls select right num:{1|2|3|4}"

      exit

esac

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linux运维日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值