echo 命令显示带颜色的字
让 echo 输出带颜色的方法有两种
1. 在shell脚本中定义颜色变量,使用echo -e调用变量
2. 定义变量的时候,把echo -e定义到变量中,然后输出变量
具体格式及选项
echo -e "\033[背景颜色;文字颜色m字符串\033[0m"
举个栗子
echo -e "\033[36m有颜色的文字\033[0m"
详解
\033[背景色值;文字色值 m 内容\033[0m
除去 “背景色值,文字色值”和“内容”部分,其他区域为固定写法,没有为什么。。死记硬背吧
色值区间
1. 背景色值区间有效值为40-47
2. 文字色值区间有效值为30-27
实例
echo -e "\033[30m黑色\033[0m"
echo -e "\033[31m红色\033[0m"
echo -e "\033[32m绿色\033[0m"
echo -e "\033[33m黄色\033[0m"
echo -e "\033[34m蓝色\033[0m"
echo -e "\033[35m紫色\033[0m"
echo -e "\033[36m天蓝\033[0m"
echo -e "\033[37m白色\033[0m"
一个简单实际应用
背景
为了简化 shell 脚本内日志打印,封装一个简单方法,增加了时间和具体日志内容
function log() {
date_str="date +'%Y-%m-%d %H:%M:%S'"
echo -e "\033[32m[`eval ${date_str}`]\033[0m \033[36m$1\033[0m"
}
具体使用
log "输出内容"
具体表现如下:
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于