需求

很多时候我们需要按照时间段来进行日志的分析,比如说查看上午的,或者某月某日的的具体日志,就不能简单实用tail -f或者head -n命令了。这个时候我们需要借用awk。

命令

zcat com.log20160529.gz | grep 'dianping_reply.log'| awk '{split($4,array,"[");if(array[2]>="29/May/2016:00:00:26" && array[2]<="29/May/2016:00:01:14"){print $0}}'

解释

扫描gz压缩文件,从中寻找带有dianping_reply的行,将改行按照[进行拆分,然后直接使用if条件进行判断,比较,最终输出想要的结果。

命令解析:

zcat 直接读取压缩文件的内容

grep用来过滤特定字符的行

awk 用来执行命令

split用来切分字符串

另外一种情况

test.log

[22/Feb/2017-18:51:58] api.momo.com /api/feed HTTP/1.1 121.0.0.1 android1.2

[22/Feb/2017-18:51:59] api.momo.com /api/follow HTTP/1.1 121.0.0.2 iphone1.1

[22/Feb/2017-18:52:58] api.momo.com /api/user HTTP/1.1 121.0.0.3 iphone1.1

[22/Feb/2017-18:52:41] api.momo.com /api/feed HTTP/1.1 121.0.0.4 android1.2

[22/Feb/2017-18:56:30] api.momo.com /api/follow HTTP/1.1 121.0.0.2 android1.2

[22/Feb/2017-18:51:21] api.momo.com /api/user HTTP/1.1 121.0.0.3 iphone1.1

[22/Feb/2017-18:59:58] api.momo.com /api/user HTTP/1.1 121.0.0.3 android1.2

[22/Feb/2017-18:51:21] api.momo.com /api/feed HTTP/1.1 121.0.0.1 iphone1.1

查询22/Feb/2017-18:52:59之前的日志

cat test.log | awk '{split($1,array,"[");split(array[2],array2,"]");if(array2[1] >= "22/Feb/2017-18:52:59"){print($0)}}'

linux awk 时间范围,linux下使用awk命令按时间段筛选日志相关推荐

  1. 中文linux(Ubuntu)下让date命令显示英语日期

    Question 操作系统为中文,所以date显示都是中文.但是又无法更改操作系统的语言,因为还是要使用中文系统的. Solution localhost:dist Sean$ date 2018年 ...

  2. 没有权限cd linux,为什么linux在root权限下 打cd命令没有用,都显示没有那个目录或文件...

    心怡 1级 2016-06-28 回答 一.目录操作命令 cd cd命令功能 在每一个操作系统中,都需要有改变目录的工作,linux也不例外,在linux操作系统中,是通过cd命令来改变工作目录的. ...

  3. 老板下了死命令,要把日志系统切换到Logback

    Log4j 介绍过了,SLF4J 也介绍过了,那接下来,你懂的,Logback 就要隆重地登场了,毕竟它哥仨有一个爹,那就是巨佬 Ceki Gulcu. 就在昨天,老板听我说完 Logback 有多牛 ...

  4. dd linux 尾部添加0_Linux 下的dd命令使用详解(摘录)

    一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: 1. ...

  5. dd linux 尾部添加0_linux下的dd命令使用详解

    一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: 1. ...

  6. linux mysql revoke_Linux环境下MySQL基础命令(4)----数据库的用户授权

    MySQL数据库的root用户拥有对所有库,表的全部权限,频繁的使用root用户会给数据库带来很大的风险,因此应建立一些低权限用户,只负责一部分库.表的管理维护操作,甚至可以对增.删.改.查各个操作进 ...

  7. Linux的vi编辑器下的常用命令

    vi编辑器有3种模式:命令模式.输入模式.末行模式.掌握这三种模式十分重要: 命令模式:vi启动后默认进入的是命令模式,从这个模式使用命令可以切换到另外两种模式,同时无论在任何模式下只要按一下[Esc ...

  8. Linux下的awk用法详解

    Linux下的awk用法详解 一.awk介绍 二.awk的语法 三.awk常见用法 四.awk其他用法 五.awk语言特性 一.awk介绍 1.AWK 是一种处理文本文件的语言,是一个强大的文本分析工 ...

  9. linux查询日志命令加过滤,Linux记录-筛选日志sed、find、tail,du,awk命令

    1.查看某一段时间的日志 #cat hdfs-audit.log | sed -n '/2018-04-11 10:00:00/,/2018-04-11 10:01:00/ p' | more   - ...

最新文章

  1. 命令前面加一个!的意思如!python
  2. vue如何获取年月日_BootstrapVue——Vue和Bootstrap的相结合,构建响应式应用更简单...
  3. gentos 执行sh文件_linux定时自动清理日志文件
  4. 开机启动inittab详解
  5. Windows Server入门系列之十 注册表的基本使用
  6. 动态与代理AOP--01【代理的作用与概念】【动态代理与AOP】
  7. 三款最安全的Linux操作系统(适合从事网络安全工作者使用)
  8. [C++][基础]8_容器
  9. Python 之 游戏飞机大战项目实现
  10. js中DOM, DOCUMENT, BOM, WINDOW 区别
  11. 《人人都是产品经理》系列图书说明 Late2021
  12. selenium反爬
  13. Flutter与原生混合开发
  14. Spring boot项目启动报无法加载主类
  15. 2020年电子设计竞赛 B题-单相在线式不间断电源 分析与总结
  16. Swoole进阶——02 内存之Table
  17. 画一条0.5px的线
  18. WebRequest 类和 WebResponse 类
  19. 作为学科的计算机科学(COMPUTING AS A DISCIPLINE)
  20. 如何设置ajax监控,监控使用AJAX的XMLHttpRequest

热门文章

  1. 获取弹出的窗口_Win7系统如何获取设置everyone权限的问题
  2. 7-4 统计工龄 (20 分)(C语言实现)
  3. sql date类型_共享单车数据分析的SQL数据库设计
  4. PyCharm社区版支持深度学习_深度学习,大家都看哪些社区论坛?
  5. arm for asterisk1.8
  6. Windows进程系列(2) -- Svchost进程
  7. java jni librtmp_librtmp 编译集成
  8. virtualbox主机网络管理 未能创建_如何在 VirtualBox 中增加现有虚拟机的磁盘大小 | Linux 中国...
  9. 栅格矢量化_学会用栅格系统,普通LOGO秒变高大上
  10. 【转】正确认识动脉压力波形