资讯专栏INFORMATION COLUMN

grep awk 搜索日志常用命令

shiweifu / 3432人阅读

摘要:不区分大小写只适用于单字符。查询多文件时不显示文件名。显示匹配行及行号。匹配多少个关键词之后就停止搜索不显示不存在或无匹配文本的错误信息。

0 grep 常用参数

参考: GNU Grep 3.0

--color:高亮显示匹配到的字符串
-v:显示不能被pattern匹配到的
-i:忽略字符大小写
-o:仅显示匹配到的字符串
-q:静默模式,不输出任何信息
-A#:after,匹配到的后#行
-B#:before,匹配到的前#行
-C#:context,匹配到的前后各#行
-E:使用ERE,支持使用扩展的正则表达式

-c:只输出匹配行的计数。
-I:不区分大 小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
- m: 匹配多少个关键词之后就停止搜索
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
1 普通:搜索trace.log 中含有ERROR字段的日志

grep ERROR trace.log

2 输出文件:可以将日志输出文件中

grep ERROR trace.log > error.log

3 反向:搜索不包含ERROR字段的日志

grep -v ERROR trace.log

4 向前:搜索包含ERROR,并且显示ERROR前10行的日志

grep -B 10 ERROR trace.log

5 向后:搜索包含ERROR字段,并且显示ERROR后10行的日志

grep -A 10 ERROR trace.log

6 上下文:搜索包含ERROR字段,并且显示ERROR字段前后10行的日志

grep -C 10 ERROR trace.log

7 多字段:搜索包含ERROR和DEBUG字段的日志

gerp -E "ERROR|DEBUG" trace.log

8 多文件:从多个.log文件中搜索含有ERROR的日志

grep ERROR *.log

9 省略文件名:从多个.log文件中搜索ERROR字段日志,并不显示日志文件名

从多个文件中搜索的日志默认每行会带有日志文件名

grep -h ERROR *.log

10 时间范围: 按照时间范围搜索日志

awk "$2>"17:30:00" && $2<"18:00:00"" trace.log
日志形式如下, $2代表第二列即11:44:58, awk需要指定列

11-21 16:44:58 /user/info/
11 有没有:搜索到第一个匹配行后就停止搜索

grep -m 1 ERROR trace.log

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/33325.html

相关文章

  • SegmentFault 技术周刊 Vol.19 - Linux 文本处理三利器

    摘要:所以,本期周刊将介绍命令行世界中最常用的文本处理命令三巨头,让它们带你初步领略命令行的强大。简单的,可以直接理解为是一个数据处理工具,倾向于将一行文本分成数个字段来处理,适合小型数据的处理。 showImg(https://sfault-image.b0.upaiyun.com/226/799/2267992322-586b7c52ed9fc); 之前看过一篇文章《当我们 chmod ...

    hightopo 评论0 收藏0
  • 日志分析必备指令集【来自一段线上日志的查看的经历】

    摘要:用于检查及删除文本文件中重复出现的行列,需要与命令结合使用一定要排序,不然去重无效,只会去除相邻的重复项栏位字符位置字符位置输入文件输出文件或在每列旁边显示该行重复出现的次数。 线上日志查看基础 查看线上机器的一些信息和基础命令: du、df查看大小相关 cat、zcat、less、tail、head查看文件内容 grep、awk处理文件内容 sort、uniq、wc统计 scp文件...

    stackfing 评论0 收藏0
  • Bash Cookbook 学习笔记 【中级】

    摘要:本文是以英文版为基础整理的笔记,力求脱水更新完中级。空格被默认作各列的分隔符,也可以通过开关进行自定义。这样的数组也叫作关联数组,或称为映射,或者是哈希表。空行表示段落的结束会匹配空行。 showImg(https://segmentfault.com/img/bVZARf?w=314&h=413); Read Me 本文是以英文版 为基础整理的笔记,力求脱水 2018.01.21 ...

    frank_fun 评论0 收藏0
  • Bash Cookbook 学习笔记 【中级】

    摘要:本文是以英文版为基础整理的笔记,力求脱水更新完中级。空格被默认作各列的分隔符,也可以通过开关进行自定义。这样的数组也叫作关联数组,或称为映射,或者是哈希表。空行表示段落的结束会匹配空行。 showImg(https://segmentfault.com/img/bVZARf?w=314&h=413); Read Me 本文是以英文版 为基础整理的笔记,力求脱水 2018.01.21 ...

    ckllj 评论0 收藏0
  • shell在手分析服务器日志不愁?

    摘要:自己的小网站跑在阿里云的上面偶尔也去分析分析自己网站服务器日志看看网站的访问量。然后统计最终返回的数字就是当前所有端口的已建立连接的总数。 自己的小网站跑在阿里云的ECS上面,偶尔也去分析分析自己网站服务器日志,看看网站的访问量。看看有没有黑阔搞破坏!于是收集,整理一些服务器日志分析命令,大家可以试试! 1、查看有多少个IP访问: awk {print $1} log_file|sor...

    fyber 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<