编写日志错误摘要脚本

ShellBeginner
立即练习

简介

三个应用程序日志需要执行相同的简单检查:统计以 ERROR 开头的行数,并为每个文件输出一条结果。使用一个简短的循环即可处理所有 .log 文件,无需手动重复执行命令。

前面的引导实验已经逐步构建了这种循环。本挑战要求你编写一个小型可复用脚本,不需要额外的复制操作、报告目录或错误处理要求。

创建错误摘要脚本

当前情况

/home/labex/project/log-automation/logs 目录中包含 api.loghealthy.logworker.log

要求范围

  • 创建 /home/labex/project/log-automation/process-logs.sh
  • 脚本的第一个参数是日志所在的目录。
  • 处理以 .log 结尾的文件。
  • 统计每个文件中以 ERROR 开头的行数。
  • filename errors=count 格式输出一行结果。

目标

保留一个可执行脚本。运行 ./process-logs.sh logs 时,该脚本应输出正确的错误摘要。

验收标准

  • 脚本以 #!/bin/bash 开头,并且具有可执行权限。

  • ./process-logs.sh logs 输出:

    api.log errors=1
    healthy.log errors=0
    worker.log errors=2
    

提示

哪个引导示例最接近此任务?

复习使用 "$log_dir"/*.log 进行遍历、统计 ^ERROR 行,并输出文件名和计数的循环。

总结

你已经将熟悉的日志计数循环转换成了一个简短、可复用的 Bash 脚本。

✨ 查看解决方案并练习