You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计日志文件中指定IP的总出现次数

指定IP日志出现次数统计实现方案

功能说明

实现传入IP参数后直接返回该IP在指定日志文件内的总出现次数,符合要求的调用和输出格式。

脚本实现

创建名为search的脚本文件,内容如下:

#!/bin/bash
# 参数校验
if [ $# -ne 3 ] || [ "$1" != "ip" ];then
    echo "参数错误,正确用法:/search ip <目标IP>"
    exit 1
fi

# 提取传入的目标IP
TARGET_IP=$3
# 请修改为你实际的日志文件路径,支持通配符匹配多日志
LOG_PATH="/var/log/nginx/access.log"

# 统计IP出现次数,grep -c直接返回匹配行数,执行效率更高
IP_COUNT=$(grep -c "${TARGET_IP}" ${LOG_PATH})

# 按要求格式输出结果
echo "${TARGET_IP} - ${IP_COUNT}"

使用方法

  • 给脚本添加执行权限:
    chmod +x search
  • 移动到系统可执行目录方便全局调用:
    mv search /usr/local/bin/
  • 执行查询:
    /search ip 123.12.12.167
  • 输出示例:
    123.12.12.167 - 120

注意:如果你的日志是压缩包格式(比如.gz后缀的切割日志),把grep替换成zgrep即可直接统计压缩日志内容,无需提前解压。

内容的提问来源于stack exchange,提问作者Mookiedong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 18:45:04