grep:找出匹配行和前后的行

问题详情

需要统计nginx的访问日志中在某个时间点之后的IP以及IP的出现次数。于是可以先根据时间定位到某个时间点,再将该时间点之后的IP提取出来,统计出现次数。

解决方法

grep时Linux下非常好用的文本处理工具,功能非常强大。

  • grep文档中的介绍
Context Line Control
   -A NUM, --after-context=NUM
          Print  NUM  lines  of  trailing  context  after  matching  lines.   Places  a line
          containing a group separator (--) between contiguous groups of matches.  With  the
          -o or --only-matching option, this has no effect and a warning is given.

   -B NUM, --before-context=NUM
          Print  NUM  lines  of  leading  context  before  matching  lines.   Places  a line
          containing a group separator (--) between contiguous groups of matches.  With  the
          -o or --only-matching option, this has no effect and a warning is given.

   -C NUM, -NUM, --context=NUM
          Print  NUM  lines  of  output context.  Places a line containing a group separator
          (--) between contiguous groups of matches.  With the -o or --only-matching option,
          this has no effect and a warning is given.
  • 翻译

    上下文控制
      -A NUM,--after-context=NUM
            打印出匹配到的行之后的NUM行。如果有多个匹配关键词而且间隔超过给定的NUM时,打印结果会在匹配行以及打印的NUM行后面一行加上---,
            再显示下一个结果。带上-o或者--only-matching option选项,就不会有效果了,而且会出现一个警告。
    
      -B NUM, --before-context=NUM
            打印出匹配到的行以及前面的NUM行。
    
     -C NUM, -NUM, --context=NUM
            打印出匹配行和它前后各n行。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,092评论 19 139
  • 概念 正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expre...
    dxldeng阅读 7,351评论 0 2
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,358评论 2 33
  • 今天看到一个新闻,至上励合的组合成员刘洲成家暴妻子。 据刘洲成妻子林苗发微博称,她与刘洲成结婚以来,刘洲成先后6次...
    苏小木堇Amy阅读 4,039评论 1 3
  • 星期一 目标肌肉:胸。 动作:平板哑铃飞鸟6组x10个、平板哑铃卧推5组x12个、俯卧撑:6组x力竭。 星期二 目...
    袁海粟阅读 3,362评论 0 1

友情链接更多精彩内容