什么是 ANSI 颜色代码
🎉 恭喜你问了一个非常实用的问题!ANSI 颜色代码是 Linux 终端中用来控制文本颜色、背景色和格式(如加粗、闪烁)的一种标准编码方式。它可以让你的 Shell 脚本输出更加美观、清晰,甚至像“图形界面”一样有层次感!
🎯 什么是 ANSI 颜色代码?
✅ 简单解释:
ANSI 是美国国家标准协会(American National Standards Institute)制定的一套字符编码标准。
在终端中,使用特殊的 ANSI 转义序列(Escape Sequence),可以告诉终端:“从现在开始用红色显示文字”,“这段文字加粗显示”等等。
⭐ 基本格式
\033[<属性>;<前景色>;<背景色>m<要显示的文字>\033[0m
\033:转义字符(也可以写成\x1b)[:开始设置样式m:结束设置\033[0m:重置所有样式(建议每次使用后都重置)
🌈 常见的前景色(字体颜色)
| 编号 | 颜色 |
|---|---|
| 30 | 黑色 |
| 31 | 红色 |
| 32 | 绿色 |
| 33 | 黄色 |
| 34 | 蓝色 |
| 35 | 紫色 |
| 36 | 青色 |
| 37 | 白色 |
🎨 常见的背景色
| 编号 | 颜色 |
|---|---|
| 40 | 黑色背景 |
| 41 | 红色背景 |
| 42 | 绿色背景 |
| 43 | 黄色背景 |
| 44 | 蓝色背景 |
| 45 | 紫色背景 |
| 46 | 青色背景 |
| 47 | 白色背景 |
💡 常见的属性(可选)
| 编号 | 含义 |
|---|---|
| 0 | 默认(重置) |
| 1 | 加粗 |
| 4 | 下划线 |
| 5 | 闪烁 |
| 7 | 反显 |
🧪 实例演示
示例 1:只改变文字颜色
echo -e "\033[31m这是红色文字\033[0m"
echo -e "\033[32m这是绿色文字\033[0m"
echo -e "\033[33m这是黄色文字\033[0m"
示例 2:改变文字颜色 + 背景色 + 加粗
echo -e "\033[1;37;41m警告:系统错误!\033[0m"
输出效果:白色文字 + 红色背景 + 加粗
示例 3:带下划线和闪烁
echo -e "\033[4;35m注意:重要通知!\033[0m"
echo -e "\033[5;31m紧急警报!\033[0m"
🧠 小技巧总结
| 技巧 | 说明 |
|---|---|
echo -e |
必须加上 -e 才能解析转义字符 |
\033[0m |
每次使用完颜色后记得重置,否则后续内容也会受影响 |
| 定义变量 | 可以把常用颜色定义为变量,便于复用 |
RED='\033[0;31m'
GREEN='\033[0;32m'
NC='\033[0m' # No Color
echo -e "${RED}错误:磁盘空间不足!${NC}"
echo -e "${GREEN}提示:清理成功。${NC}"
🛠️ 实际应用场景举例
🎉 场景一:脚本状态提示更清晰
echo -e "\033[32m✅ 成功:配置文件已生成。\033[0m"
echo -e "\033[33m⚠️ 警告:内存即将耗尽!\033[0m"
echo -e "\033[31m❌ 错误:无法连接数据库。\033[0m"
🎉 场景二:构建菜单界面更专业
echo -e "\033[34m=== 自动化运维工具 ===\033[0m"
echo "1. 备份数据"
echo "2. 清理日志"
echo "3. 重启服务"
echo "0. 退出"
⚠️ 注意事项
| 问题 | 解决方法 |
|---|---|
| Windows CMD 不支持 | 推荐使用 PowerShell 或 WSL 终端 |
| 输出乱码 | 确保终端支持 ANSI 转义码 |
| 颜色未生效 | 使用 echo -e 并检查语法是否正确 |
| 脚本执行时颜色失效 | 确保没有重定向或管道干扰输出 |
🧩 更多高级玩法(进阶)
你可以组合多种效果,比如:
# 红底白字加粗
echo -e "\033[1;37;41m🚨 紧急通知:系统将重启!🚨\033[0m"
# 蓝底黄字闪烁
echo -e "\033[5;33;44m⚡ 正在进行高风险操作!⚡\033[0m"
🎯 下一章预告:《Shell read 命令与用户交互》
掌握了 echo 和 ANSI 颜色代码之后,你可以写出漂亮的脚本输出。接下来我们将学习如何让用户输入信息并与脚本互动 —— 使用 read 命令!
需要我继续为你生成下一章内容吗?😊

浙公网安备 33010602011771号