在shell脚本中为日志添加颜色
在 Shell 脚本中,可以通过添加 ANSI 转义序列来为日志输出添加颜色。以下是一个完备的 Shell 脚本示例,包含日志颜色定义、日志函数封装以及使用示例:完备脚本:colored_logs.sh
#!/bin/bash
# 定义颜色变量
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
BLUE='\033[0;34m'
NC='\033[0m' # 无颜色(重置颜色)
# 日志函数封装
log_error() {
echo -e "${RED} $1${NC}"
}
log_warn() {
echo -e "${YELLOW} $1${NC}"
}
log_info() {
echo -e "${GREEN} $1${NC}"
}
log_debug() {
echo -e "${BLUE} $1${NC}"
}
# 示例函数,模拟一些操作
example_function() {
log_info "开始执行示例函数..."
log_debug "这是一个调试信息,通常用于详细日志。"
# 模拟一个操作
if [[ $1 == "error" ]]; then
log_error "操作失败,模拟错误场景。"
else
log_info "操作成功完成。"
fi
log_warn "这是一个警告信息,表示需要注意的情况。"
}
# 主脚本逻辑
main() {
log_info "脚本启动..."
# 调用示例函数
example_function "success"
example_function "error"
log_info "脚本结束。"
}
# 执行主函数
main脚本说明
[*]颜色定义:
[*]使用 ANSI 转义序列定义了几种常见颜色(红色、绿色、黄色、蓝色)。
[*]NC 用于重置颜色,避免后续文本被着色。
[*]日志函数:
[*]log_error:输出红色错误日志。
[*]log_warn:输出黄色告诫日志。
[*]log_info:输出绿色信息日志。
[*]log_debug:输出蓝色调试日志。
[*]示例函数:
[*]example_function 模拟了一个操作,根据传入的参数决定是否模拟错误场景。
[*]在函数中使用了不同的日志函数来记录不同级别的日志。
[*]主函数:
[*]main 函数是脚本的入口,调用示例函数并输出日志。
[*]实行脚本:
[*]脚本末了调用 main 函数来启动逻辑。
运行脚本
[*]将脚本保存为 colored_logs.sh。
[*]赋予脚本实行权限:chmod +x colored_logs.sh
[*]运行脚本:./colored_logs.sh
输出示例
运行脚本后,您将看到类似以下的彩色输出:
https://img2024.cnblogs.com/blog/1307305/202501/1307305-20250112164414538-1846005056.png
注意事项
[*]终端支持:
[*]确保您的终端支持 ANSI 颜色代码。大多数当代终端(如 Linux 终端、macOS Terminal、Windows Terminal)都支持。
[*]日志级别:
[*]您可以根据必要调解日志级别,比方在生产环境中禁用 DEBUG 日志。
[*]扩展功能:
[*]可以将日志输出重定向到文件,或者添加时间戳等功能。
通过这种方式,您可以为 Shell 脚本中的日志输出添加颜色,使其更易于阅读和区分。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]