株兆凝 发表于 2025-6-9 10:51:45

在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
输出示例

运行脚本后,您将看到类似以下的彩色输出:

注意事项


[*]终端支持:

[*]确保您的终端支持 ANSI 颜色代码。大多数现代终端(如 Linux 终端、macOS Terminal、Windows Terminal)都支持。

[*]日志级别:

[*]您可以根据需要调整日志级别,例如在生产环境中禁用 DEBUG 日志。

[*]扩展功能:

[*]可以将日志输出重定向到文件,或者添加时间戳等功能。

通过这种方式,您可以为 Shell 脚本中的日志输出添加颜色,使其更易于阅读和区分。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

贼瘁 发表于 2025-10-12 04:47:38

很好很强大我过来先占个楼 待编辑

梁丘艷蕙 发表于 2025-11-22 08:55:49

很好很强大我过来先占个楼 待编辑

请蒂 发表于 2025-12-10 09:32:08

分享、互助 让互联网精神温暖你我

聚怪闩 发表于 2025-12-24 20:17:49

这个有用。

嗅叽 发表于 2026-1-17 11:15:52

用心讨论,共获提升!

蝌棚煌 发表于 2026-1-18 15:01:23

很好很强大我过来先占个楼 待编辑

秦欣艷 发表于 2026-1-19 03:20:11

东西不错很实用谢谢分享

裒噎 发表于 2026-1-20 08:27:02

不错,里面软件多更新就更好了

袂沐 发表于 2026-1-21 11:05:13

东西不错很实用谢谢分享

兮督 发表于 2026-1-22 12:54:45

很好很强大我过来先占个楼 待编辑

港髁 发表于 2026-1-22 21:30:30

东西不错很实用谢谢分享

拼潦 发表于 2026-1-22 23:00:57

热心回复!

娄静曼 发表于 2026-1-23 05:48:30

谢谢分享,辛苦了

颖顿庐 发表于 2026-1-26 08:29:56

感谢,下载保存了

缑莺韵 发表于 2026-1-29 04:53:31

喜欢鼓捣这些软件,现在用得少,谢谢分享!

官厌 发表于 2026-2-2 02:52:46

这个有用。

曲愍糙 发表于 2026-2-7 22:04:15

感谢,下载保存了

钨哄魁 发表于 2026-2-9 06:16:44

前排留名,哈哈哈

虹姥 发表于 2026-2-9 14:51:02

分享、互助 让互联网精神温暖你我
页: [1] 2
查看完整版本: 在shell脚本中为日志添加颜色