加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – 日志中日期范围之间的grep

发布时间:2020-12-14 06:22:46 所属栏目:百科 来源:网络整理
导读:我试图grep两个日期范围之间的所有行,其中日期格式如下: date_time.strftime( “%Y%米%d%H%M”) 所以说[201211150821 – 201211150824] 我正在尝试编写一个脚本,其中包括查找这些日期之间的行: cat somepattern*.log | **grep [201211150821 - 201211
我试图grep两个日期范围之间的所有行,其中日期格式如下:
date_time.strftime( “%Y%米%d%H%M”)
所以说[201211150821 – 201211150824]

我正在尝试编写一个脚本,其中包括查找这些日期之间的行:

cat <somepattern>*.log | **grep [201211150821 -  201211150824]**

我试图找出unix中是否存在某些内容,我可以在其中查找日期范围.

我可以将日志中的日期转换为(自纪元以来),然后使用常规grep与[time1 – time2],但这意味着读取每一行,提取时间值然后转换它等.

可能是一些简单的东西已经存在,所以我可以指定日期/时间戳范围,就像我可以为grep提供数值范围一样?

谢谢!

P.S:
我也可以传递类似于2012111511(27 | 28 | 29 | [3-5] [0-9])的模式,但这些特定于我想要的范围以及每次尝试不同日期并且变得棘手的繁琐在运行时这样做.

使用awk.假设行中的第一个标记是时间戳:
awk '
BEGIN { first=ARGV[1]; last=ARGV[2]; }
$1 > first && $1 < last { print; }
' 201211150821 201211150824

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读