简介¶
当我们在日常工作中下载别人编写的 bash 脚本时,有时一些关键字符串会使用特殊的颜色进行标记。 如何通过编写脚本实现这种效果呢?
字体颜色¶
| 颜色代码 | 描述 |
|---|---|
| 30 | 黑色 |
| 31 | 红色 |
| 32 | 绿色 |
| 33 | 黄色 |
| 34 | 蓝色 |
| 35 | 紫色 |
| 36 | 深绿色 |
| 37 | 白色 |
字体的背景颜色¶
| 背景颜色代码 | 描述 |
|---|---|
| 40 | 黑色 |
| 41 | 深红色 |
| 42 | 绿色 |
| 43 | 黄色 |
| 44 | 蓝色 |
| 45 | 紫色 |
| 46 | 深绿色 |
| 47 | 白色 |
显示模式¶
| 代码 | 描述 |
|---|---|
| 0 | 终端默认设置 |
| 1 | 高亮 |
| 4 | 下划线 |
| 5 | 光标闪烁 |
| 7 | 反白显示 |
| 8 | 隐藏 |
执行方式¶
-
\033[1;31;40m "1" 表示可选的显示模式。 "31" 表示字体颜色。 "40m" 表示字体背景颜色
-
\033[0m 还原终端默认颜色,即取消颜色设置
脚本示例¶
我们可以写一个脚本来观察颜色变化。
#!/bin/bash
# 字体颜色循环
for color1 in {31..37}
do
echo -e "\033[0;${color1};40m---hello! world---\033[0m"
done
echo "-------"
# 背景颜色循环
for color2 in {40..47}
do
echo -e "\033[30;${color2}m---hello! world---\033[0m"
done
echo "-------"
# 显示模式的循环
for color3 in 0 1 4 5 7 8
do
echo -e "\033[${color3};37;40m---hello! world---\033[0m"
done
Shell > chmod a+x color_set.sh
Shell > ./color_set.sh
其效果如下:

Author: tianci li
Contributors: Steven Spencer