免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1500 | 回复: 5
打印 上一主题 下一主题

[请教ksh]数据抽取 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-19 15:43 |只看该作者 |倒序浏览
日志文件存放位置为:

/batch/kbwz3100301d/logs/job/kbwz3100301d_200512xxx.log
/batch/kbwz3100301d/logs/job/kbwz3100301d_200512yyy.log
...
...
/batch/kbwz3100301m/logs/job/kbwz3100301m_200512zzz.log
/batch/kbwz3100301m/logs/job/kbwz3100301d_200512xxx.log
...
...
...

日志文件如下:

2005-12-14 13:59:15.433 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Module QueModule initialization has completed!
2005-12-14 13:59:15.434 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Module QueModule execution started!
2005-12-14 13:59:15.434 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] start to execute threadarray!
2005-12-14 13:59:15.435 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] thread 07VIP1 started!
2005-12-14 14:04:31.110 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Created File Name:SI_wenzhou_monthly_07VIP120051214135915001
.txt
2005-12-14 14:04:31.113 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] File Size:7091435
2005-12-14 14:04:31.113 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Records:50000
2005-12-14 14:04:31.115 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Created File Name:SI_wenzhou_monthly_07VIP120051214135915002
.txt
2005-12-14 14:04:31.115 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] File Size:7108139
2005-12-14 14:04:31.116 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Records:50000
2005-12-14 14:04:31.118 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Created File Name:SI_wenzhou_monthly_07VIP120051214135915003
.txt
2005-12-14 14:04:31.118 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] File Size:7163700
2005-12-14 14:04:31.118 [StreamID: 01_SI_MONTHLY_07][Module: QueModule] Records:50000


kbwz3100301d kbwz3100301m这样的是job id

现在希望实现这样的功能,抽取所有/batch/kbwz*开头的目录中的job/的所有log中的created file name,file size, records,并且写入到文件report中去.

谢谢各位大虾提示思路,嘿嘿,有代码就非常感谢拉.因为sed,awk我都还没入门.

[ 本帖最后由 webdev 于 2005-12-19 15:45 编辑 ]

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-12-19 17:10 |只看该作者
  1. awk '$0~/File Size|Created File Name|Records/' /batch/kbwz*/logs/job/*.log

  2. grep -E "File Size|Created File Name|Records" /batch/kbwz*/logs/job/*.log
复制代码

这个意思?

论坛徽章:
0
3 [报告]
发表于 2005-12-19 17:11 |只看该作者
awk -F ":" '$0~/Created File Name/{printf $NF};$0~/File  Size/{printf $NF };$0~/Records/{printf $NF ,"\n" };'

[ 本帖最后由 大蚂蚁 于 2005-12-20 20:40 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2005-12-19 22:52 |只看该作者
多谢2位热心会员,我刚学习ksh,还不知道这些写法,真是非常感谢,明天试下看,现在没环境了.

论坛徽章:
0
5 [报告]
发表于 2005-12-20 10:11 |只看该作者

继续请教

awk '$0~/File Size|Created File Name|Records/' /batch/kbwz*/logs/job/*.log

grep -E "File Size|Created File Name|Records" /batch/kbwz*/logs/job/*.log

可以抽取出我需要的数据,但是如何把他们转化成如下的report格式呢?

report

JobID         FileName         FileSize         Records
kbwz..        SI_...               12334           1000
kbwz..        BA_...               123467         5000


.........

[ 本帖最后由 webdev 于 2005-12-20 10:13 编辑 ]

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2005-12-20 17:05 |只看该作者
抽取以后的数据格式如何,要以什么样的规律来合并?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP