shell脚本中echo颜色设置

本文介绍两种在Shell脚本中实现文本高亮显示的方法。一种是通过echo命令结合转义序列来改变文本的颜色和显示效果,如高亮、下划线等;另一种是利用tput命令更改文本的前景色和背景色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:跑shell脚本时,想增加高亮输出

第一种设置方法:

颜色字号表

显示方式意义
0终端默认设置
1高亮显示
4使用下划线
5闪烁
7反白显示
8不可见
前景色背景色颜色
3040黑色
3141红色
3242绿色
3343黃色
3444蓝色
3545紫红色
3646青蓝色
3747白色
vim echo.sh

#!/bin/bash
# 定义颜色动作, 把echo -e也定义到变量中
RED="echo -en \\E[4;31m"
GREEN="echo -en \\E[7;32m"
YELLOW="echo -en \\E[5;33m"
RESET="echo -en \\E[0;39m"

# 使用时直接调用颜色动作即可
$RED && echo 红色 && $RESET
$GREEN && echo 绿色 && $RESET
$YELLOW && echo 黄色 && $RESET
$RESET && echo 重置 && $RESET

注释:
  1.  需要增加-n选项,这样引用时不会出现换行的问题。
  2. \\本质是\,在双引号中反斜线符号一定要写成\\
  3. 引用变量要放到其他语句前面,并使用&&连接。
效果图:

 

第二种设置方法:

put 命令会利用 terminfo 数据库中的信息,来控制和更改我们的终端,比如控制光标、更改文本属性、控制屏幕,以及为文本涂色。
其中,为文本涂色的方法是:

  • tput setab:用于设置背景色;
  • tput setaf:用于设置前景色。

                                                                                                                                                                                颜色字号定义

数值01234567
颜色黑色红色绿色黄色蓝色洋红色黄色白色


vim echo1.sh

#/bin/bash
RED=$(tput setaf 1)
GREEN=$(tput setaf 2)
RESET=$(tput sgr0)
echo "${RED}red ${RESET}"
echo "${GREEN}green ${RESET}"

效果图:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

运维归一

整理不易,请个辣条吃吧

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

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

打赏作者

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

抵扣说明:

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

余额充值