MST
星途 面试题库

面试题:Bash脚本中的日志分析基础

假设你有一个日志文件`app.log`,每行日志格式为'时间戳 日志级别 日志信息',例如'2023 - 10 - 01 12:00:00 INFO 系统启动'。请编写一个Bash脚本,统计出每种日志级别的出现次数,并输出结果。
44.4万 热度难度
编程语言Bash

知识考点

AI 面试

面试题答案

一键面试
#!/bin/bash

# 初始化日志级别计数
info_count=0
warn_count=0
error_count=0

# 逐行读取日志文件
while read -r line; do
    # 提取日志级别
    log_level=$(echo $line | awk '{print $2}')
    case $log_level in
        INFO)
            ((info_count++))
            ;;
        WARN)
            ((warn_count++))
            ;;
        ERROR)
            ((error_count++))
            ;;
    esac
done < app.log

# 输出结果
echo "INFO 出现次数: $info_count"
echo "WARN 出现次数: $warn_count"
echo "ERROR 出现次数: $error_count"