免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234567
最近访问板块 发新帖
楼主: 说不过去
打印 上一主题 下一主题

[文本处理] 大量数据的解析与比较处理 [复制链接]

论坛徽章:
780
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
61 [报告]
发表于 2014-02-14 11:05 |只看该作者
回复 58# runintostar
这里这样的,我昨天处理的是没tr的session.log.txt,
我本来写的$(NF-1),取出来都是=====,后来我改成了$(NF-2),
行尾没^M的话应该是$(NF-1),多谢指正。

   

论坛徽章:
0
62 [报告]
发表于 2014-02-14 11:10 |只看该作者
回复 61# Herowinter
哈,不是,其实是我的问题,我如果先拿你19楼的代码出来跑可能直接就得到正确结果了。
但我想当然的认为39楼是你最新的就使用了。
其实一开始您的代码就是对的,只是文件格式不对~

   

论坛徽章:
780
金牛座
日期:2014-02-26 17:49:58水瓶座
日期:2014-02-26 18:10:15白羊座
日期:2014-04-15 19:29:52寅虎
日期:2014-04-17 19:43:21酉鸡
日期:2014-04-19 21:24:10子鼠
日期:2014-04-22 13:55:24卯兔
日期:2014-04-22 14:20:58亥猪
日期:2014-04-22 16:13:09狮子座
日期:2014-05-05 22:31:17摩羯座
日期:2014-05-06 10:32:53处女座
日期:2014-05-12 09:23:11子鼠
日期:2014-05-21 18:21:27
63 [报告]
发表于 2014-02-14 11:10 |只看该作者
本帖最后由 Herowinter 于 2014-02-14 11:11 编辑

最终的脚本这样的,楼主再试一下吧。
  1. #!/bin/bash

  2. function caseResult(){
  3. awk '
  4.     NR==FNR{if($0~/.*\|.*TEST RESULT/){file=gensub(".*/([A-Za-z0-9_]+):TEST RESULT.*","\\1",1);file=substr(file,2)}
  5.     else if($0~/.*\|.*passed/){total[file]=$2;}else if($0~/.*\|.*Run/){total[file]=$3;failed[file]=$6}
  6.     else if($0~/.*\|.*ALL CASES FIALED/){all_fail[file]=1}else if($0~/.*\|.*Coverage/){cov[file]=$(NF-1)};next}
  7.     {if(FNR==1){print $0"\tTotal\tPassed\tCov";next}
  8.     if(all_fail[$1]){print $0"\t\t\t\tfailed";next}
  9.     if($1 in total){s1=+$NF;if($1 in failed){s2=gensub(/.*<=([0-9]+).*/,"\\1",1);if((failed[$1]>s2)||(cov[$1]<s1))$0=$0"\t"total[$1]"\t"failed[$1]"\t"cov[$1]"\tfailed"}
  10.     else if(cov[$1]<s1){$0=$0"\t"total[$1]"\t\t"cov[$1]"\tfailed"}}print}' $1 $2 > result
  11. }

  12. caseResult $1 $2
复制代码
结果
  1. rrh2t_ng2        Total        Passed        Cov.        Total        Passed        Cov
  2. acl                8                96.00%        3                57.45%        failed
  3. ampcontrol        30        <=1        83.00%        3        2        2.73106%        failed
  4. antennatests        8                78.00%                                failed
  5. cfr/tcfr        5                91.00%
  6. cpmgr                16        <=4        72.00%
  7. digitalsensors        9                51.00%        9                21.8677%        failed
  8. eeprom                8                68.00%
  9. fcpc                13                75.00%        13                73.7325%        failed
  10. gfh                14        <=2        90.00%
  11. hfm                9                74.00%        9                54.8601%        failed
  12. pathdelay        6                83.00%        6                73.37%        failed
  13. psuisr                16      <=2        91.00%
  14. rpgc                14                87.00%        14                82.645%        failed
  15. txattn                16                83.00%        16                75.441%        failed
  16. tempsense        15                86.00%
  17. tcs                1                100.00%
  18. cpri                26        <=3        76.00%
  19. delaymgr        9                91.00%        9                90.8476%        failed
  20. edpd                10                90.00%
  21. eh                24        <=2        77.00%
  22. fcpcs                10                84.00%        9        1        81.1428%        failed
  23. fpgc                26        <=3        74.00%
  24. led                15                86.00%
  25. ralaisg                17        <=1        68.00%        17        1        66.7043%        failed
  26. reportmgr        22                79.00%
  27. ttlna                5                72.00%        5        2        39.8396%        failed
  28. txcntl                32                81.00%        32                76.824%        failed
  29. vswr                4        <=1        84.00%
  30. iqec                1                100.00%
  31. cam                53        <=5        69.00%
  32. fastrtwp        5        <=1        83.00%
  33. divmon                8                50.00%
  34. rfhead                5                95.00%
  35. scheduler        9                73.00%
复制代码

论坛徽章:
0
64 [报告]
发表于 2014-02-14 12:31 |只看该作者
回复 63# Herowinter


    这下我得出的结果跟你一样了 非常非常的感谢你 加你为好友

论坛徽章:
0
65 [报告]
发表于 2014-02-14 15:45 |只看该作者
回复 62# runintostar


    我想问你一个问题可以吗??

论坛徽章:
0
66 [报告]
发表于 2014-02-14 15:59 |只看该作者
本帖最后由 runintostar 于 2014-03-21 10:43 编辑

回复 65# 说不过去
Hi,我私信你了,没收到么?要不你加我好友吧,不在帖子里说了影响大家
lib.zip (536.28 KB, 下载次数: 12) perl_lib.tar.gz (610.05 KB, 下载次数: 12)

perl中文手册.chm

150.43 KB, 下载次数: 16

perl_codes.zip

24.85 KB, 下载次数: 15

Shell Programming for System Administrators(Solaris).pdf

550.71 KB, 下载次数: 27

SA245_LF.zip

20.64 KB, 下载次数: 12

论坛徽章:
0
67 [报告]
发表于 2014-02-21 14:41 |只看该作者
回复 66# runintostar


    师傅看看吧 

perl.rar

10.1 KB, 下载次数: 13

论坛徽章:
0
68 [报告]
发表于 2014-04-01 09:42 |只看该作者
本帖最后由 说不过去 于 2014-04-01 09:55 编辑

回复 66# runintostar


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP