日志中抓取特定字段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;

时间: 2024-10-11 21:03:53

日志中抓取特定字段shell脚本的相关文章

linux查找特定类型的文件中是否包含特定字段

shell是个好东西,极大的方便了查询工作,之前遇到一个问题,查询包含有特定字段的特定文件,经过查询,命令如下: 1 find . -type f -name '*.cpp' print|xargs grep -r '#include' -l 上述命令的意思是查询包含有 '#include' 字符的 cpp文件,并给出文件名列表.具体需要熟悉find 和grep命令和各个参数的意思. 参考链接:http://blog.sina.com.cn/s/blog_691a84f301015khx.htm

java练习题(字符串类):显示4位验证码、输出年月日、从XML中抓取信息

1.显示4位验证码 注:大小写字母.数字混合 public static void main(String[] args) { String s="abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";//设定验证码的集合 String s1=""; for(int i=0;i<4;i++){ int n=(int)(Math.random()*1000)%s.length();//取余

#在FLAT模式下,需要设置flat子网,VM的IP从这个设置的子网中抓取,这时flat_injected需要设置为True,系统才能自动获得IP,如果flat

#在FLAT模式下,需要设置flat子网,VM的IP从这个设置的子网中抓取,这时flat_injected需要设置为True,系统才能自动获得IP,如果flat子网和主机网络是同一网络,网络管理员要注意手动配置主机IP,以免IP冲突. #在FLATDHCP模式下,系统将通过自己的服务为VM分配IP,这时不要将flat_injected设置为True,同时设置flat_network_dhcp_start以防止IP冲突,我想这个参数应该是区别主机IP和VM的IP的. 注: 可以使用下列方法来控制I

网页中抓取数据

下面写个例子,实现从网页中抓取数据. 这个例子中,只是从网页中获取了数据,但是没有进行任何处理,只是将数据保存到一个txt文件中. 该例子是在android工程中写的. package com.example.creepertest; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.I

Android APP测试的日志文件抓取

     1    log文件分类简介 实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志 状态信息的有:adb shell cat /proc/kmsg ,adb shell dmesg,adb shell dumpstate,adb shell dumpsys,adb bugreport,工程       模式等 2    LOG抓取详解 l  实时打印 adb logcat -b main -v

【android】[转]Android软件测试的日志文件抓取简介

1    log文件分类简介 实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志 状态信息的有:adb shell cat /proc/kmsg ,adb shell dmesg,adb shell dumpstate,adb shell dumpsys,adb bugreport,工程模式等 2    LOG抓取详解 l  实时打印 adb logcat -b main -v time>app.log

一站式学习Wireshark(八):应用Wireshark过滤条件抓取特定数据流

应用抓包过滤,选择Capture | Options,扩展窗口查看到Capture Filter栏.双击选定的接口,如下图所示,弹出Edit Interface Settints窗口. 下图显示了Edit Interface Settings窗口,这里可以设置抓包过滤条件.如果你确知抓包过滤条件的语法,直接在Capture Filter区域输入.在输入错误时,Wireshark通过红色背景区域表明无法处理过滤条件.最有可能的情况是,过滤条件中含有输入错误,或是使用了display filter的

WirShark系列: 使用WireShark过滤条件抓取特定数据流(zz)

应用抓包过滤,选择Capture | Options,扩展窗口查看到Capture Filter栏.双击选定的接口,如下图所示,弹出Edit Interface Settints窗口. 下图显示了Edit Interface Settings窗口,这里可以设置抓包过滤条件.如果你确知抓包过滤条件的语法,直接在Capture Filter区域输入.在输入错误时,Wireshark通过红色背景区域表明无法处理过滤条件.最有可能的情况是,过滤条件中含有输入错误,或是使用了display filter的

winfrom 网页中抓取源代码

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO;//引用流 using System.Net;//引用网页 namespace WindowsFor