Chinaunix首页 | 论坛 | 博客
  • 博客访问: 43917
  • 博文数量: 19
  • 博客积分: 720
  • 博客等级: 上士
  • 技术积分: 231
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-21 15:19
文章分类

全部博文(19)

文章存档

2012年(2)

2011年(15)

2010年(2)

我的朋友

分类: PHP

2011-09-07 15:00:21

给定的时间区间提取目标行

  1. start="2011 09 07 09 30 00"

  2. end="2011 09 07 10 00 59"

  3. awk '$1~/ERROR/{ print $0} ' catalina.out | awk -F '[-: ]+' -v s="$start" -v  e="$end" 'mktime($2" "$3" "$4" "$5" "$6" "substr($7,1,2))>=mktime(s)&&mktime($2" "$3" "$4" "$5" "$6" "substr($7,1,2))<=mktime(e)'

提取时间段--------------搞了很久在别人提醒下,直蛋疼.....................

 

  1. #!/bin/bash
  2. start="2011 09 07 09 30 00"
    end="2011 09 07 10 00 59"
  3. awk -F '[-: ]+' -v s="$start"  '{ if ( $1~/ERROR/ && mktime($2" "$3" "$4" "$5" "$6" "substr($7,1,2))
  4. >=mktime(s)) print NR
    }' catalina.out  > tmp1
  5. awk -F '[-: ]+' -v e="$end"  '{ if ( $1~/ERROR/ && mktime(e)>=mktime($2" "$3" "$4" "$5" "$6"
  6. "substr($7,1,2)))  print NR }
    ' catalina.out  > tmp2
  7. t1=`head -n 1  tmp1`
    t2=`tail  -n 1  tmp2`
  8. sed -n ''$t1','$t2'p' catalina.out
    rm -rm tmp1
    rm -rm tmp2
阅读(1164) | 评论(0) | 转发(0) |
0

上一篇:$HOME/history 格式处理

下一篇:rsync

给主人留下些什么吧!~~