Linux终端使用echo输出带颜色字符串

无意间发现别人的makefile编译时输出的提示信息是彩色的,于是就深入的研究了下。

例如:

echo -e "\033[33m make yocto start \033[0m"

打印效果如下:

于是针对这条命令作了拆分并了解了含义:

解析

\033:

是 ANSI 转义序列的开头,033 是八进制,表示转义字符 ESC(ASCII 值为 27)。
用于开始颜色或样式设置。
[33m:

定义颜色代码。
33 表示黄色(前景色)。
make yocto start:

是要输出的文本内容,显示为黄色。
\033[0m:

这是 ANSI 转义序列的重置部分。
0m 用于清除之前的颜色和样式,恢复到默认状态。
-e:

echo 的参数,用于使反斜杠转义序列生效。

由此去想到是否可以输出背景色,于是经过查资料发现:

常见文本颜色代码

你可以更改 33 来实现不同颜色的文本输出:

代码前景色背景色
30黑色黑色
31红色红色
32绿色绿色
33黄色黄色
34蓝色蓝色
35紫色紫色
36青色青色
37白色白色
 

常见背景颜色代码

背景色代码背景色示例
40黑色\033[40m
41红色\033[41m
42绿色\033[42m
43黄色\033[43m
44蓝色\033[44m
45紫色\033[45m
46青色\033[46m
47白色\033[47m

常见的其他样式代码

样式代码含义示例
1粗体/高亮\033[1mBold Text\033[0m
4下划线\033[4mText\033[0m
7反显(背景前景交换)\033[7mReversed\033[0m
0重置样式\033[0m

 

  1. 输出黄色背景,黑色前景

    echo -e "\033[43;30m Yellow Background with Black Text \033[0m"

下划线 + 蓝色背景+白色前景色

echo -e "\033[4;37;44m Underlined Text with Blue Background \033[0m"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Liu-Eleven

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

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

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

打赏作者

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

抵扣说明:

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

余额充值