当前位置:首页>Linux>Linux黑白日志丑到瞎?1行代码秒变彩色

Linux黑白日志丑到瞎?1行代码秒变彩色

  • 2026-10-11 07:13:07
Linux黑白日志丑到瞎?1行代码秒变彩色

Linux 日志全是黑白,找报错超费眼!用 Shell 和 C 实现彩色打印,一眼揪 bug 少加班。

这其实是 Linux 通用 ANSI 转义码,简单给文字换色,记好万能公式就能用。


ANSI 彩色原理

核心流程:程序输出 → 插入 \033[...m → 终端识别 → 渲染彩色文字。

万能染色公式

\033[属性;颜色m 要打印的内容 \033[0m

重点碎碎念:结尾一定要加 \033[0m,千万别漏!

不然整个终端都会被染成固定颜色,后续输啥都是这个色,想改回来超麻烦,踩过坑的都懂。

Shell 脚本用法

echo -e "\033[属性;颜色m要打印的内容\033[0m"

关键点:echo 后面必须加 -e 参数,不然染色暗号会当成普通文字原样打出来。


日志级别配色(行业通用)

级别
颜色
效果
报错
红色(31)
出问题一眼锁定,不用瞎翻乱找
成功
绿色(32)
运行顺利,看着就舒心,下班信号
警告
黄色(33)
小问题提前留意,避免后续踩大坑
提示
蓝色(34)
日常运行信息,不扎眼也不突兀

颜色速查小抄

文字属性

属性值
效果
0
恢复默认
1
高亮加粗(更显眼)

文字颜色

颜色值
颜色
30
黑色
31
红色
32
绿色
33
黄色
34
蓝色
35
紫色
36
青色
37
白色

高亮组合示例

1;31 = 高亮红色,报错用这个更扎眼,扫一眼就能看见。


Shell 脚本示例


C 语言实现

写 Linux C 程序、做嵌入式开发的朋友,染色原理和 Shell 一样,不需要额外头文件或第三方库。

推荐用法:宏封装

项目里更推荐用宏封装,代码看着干净整洁,后续改颜色只改宏就行。

新手避坑指南

这几点千万别踩雷,照着做就完全没事:

1. Shell 的 echo 必须加 -e

2. 结尾必须加 \033[0m

忘记加 \033[0m 重置颜色,整个终端都会变色,后续所有输出都带着这个颜色。

3. 日志存文件不要加颜色

彩色 ANSI 码写入文件会变成乱码。彩色日志只适合终端调试,正式文件用黑白就好。


总结

真的别再用枯燥的黑白日志折磨自己了,就一行代码的小事。

调试的时候,报错、提示、成功分得明明白白,再也不用盯着密密麻麻的文字抠细节

最新文章

随机文章