面试题答案
一键面试#!/bin/bash
# 统计每种状态码出现的次数
status_count=$(awk '{print $4}' network.log | sort | uniq -c | sort -n -k2)
# 输出每种状态码出现的次数
echo "状态码统计:"
echo "$status_count"
# 计算总请求数
total_requests=$(wc -l < network.log)
# 计算状态码不是200的请求数
non_200_requests=$(grep -v ' 200$' network.log | wc -l)
# 计算状态码不是200的请求占总请求数的比例
non_200_percentage=$(awk -v non_200=$non_200_requests -v total=$total_requests 'BEGIN {printf "%.2f%%\n", (non_200 / total) * 100}')
# 输出状态码不是200的请求占总请求数的比例
echo "状态码不是200的请求占比: $non_200_percentage"