日志中抓取特定字段shell脚本
老大让我把日志中的信息归类总结,好麻烦,写了这个脚本帮助工作。
需改进:1.抓取日志时间,只需要最后一次的时间,而这个脚本全部会抓到
2.需要两个时间的差值(比如15:23:34与23:23:34),没有完成
3.aix好不习惯
#!/bin/ksh #进入目标文件目录 cd /user/lyb #输入标识字段 echo "开始时间" "结束时间" "客户组" "客户数量" >> /user/file10 #for i in "1 2 3 4 5 6 7 8 9 10 11 12" while [ true ] do echo "Please input the filename" #变量名为文件名,read -p不好使 read filename #取出需要的字段,当文件中有多个相同字段时,没有判断条件 s1=`grep "接收到注册响应消息包,开始执行任务解析" $filename | sed ‘s/\..*//g‘` s2=`grep "终止任务处理完毕,服务退出" $filename | sed ‘s/\..*//g‘` s3=`grep "加载客户组.*用户" $filename | sed ‘s/^.*\[//g‘ | sed ‘s/\].*$//g‘` s4=`grep "加载了.*个用户" $filename | sed ‘s/^.*\[//g‘ | sed ‘s/\].*$//g‘` #将取出的字段输入到文件 echo "$s1" "$s2" "$s3" "$s4" >> /user /file10 done
#计算时间差sql语句
#select round((to_date(‘2014-11-13 12:22:23‘,‘yyyy-mm-dd hh24:mi:ss‘)-to_date(‘2014-11-13 12:12:32‘,‘yyyy-mm-dd hh24:mi:ss‘))*24*60) time from dual;
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。