awk sed综合使用检测日志的脚本一条

工作中常会用串口打印日志,在secureCrt中做:


这样的设置,打印出来的日志为:

09:11:21.998  :eload pin is High!
09:11:22.023  :RC48MHzCaliSysClk=49440000
09:11:22.048  :Start to run....
09:11:22.061  :smtlk_sign= 0
09:11:22.061  :
09:11:22.061  :
09:11:22.176  :!!!!!!!!!sdk version(HSF-V1.40-201503201010-LPB100-128-16B),the app_main start time is May 16 2017 23:19:04
09:11:22.210  :!!!!! the version num is(000)_______
09:11:22.243  :erase address=be000 page cnt=1
09:11:22.276  :erase address=bf000 page cnt=1

这样有规律的格式,当拷机测试时,可能出现定时器到了某些操作没有执行的情况(比如心跳),于是使用下面脚本就能很快在很大的日志文件中,找到有用的信息:


#!/bin/bash

fn=$1
kw=$2
it=$3


cat $fn |sed -n "/${kw}/p"|awk -F ':' '{if(be != 0){v=($1-a)*3600+($2-b)*60+$3-c} if(v<0){v=v+86400}be=1;a=$1; b=$2; c=$3;  if(v-"'${it}'"> 3 || v-"'{it}'" < -3) print $1":"$2":"$3,v}'
其中 $1是日志文件名, $2是关键字 , $3是时间间隔

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值