免费注册 查看新帖 |

Chinaunix

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

[文本处理] 求shel取最后一次出现的字符串以后的行。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-10-27 12:10 |只看该作者 |倒序浏览
本帖最后由 zerohly 于 2014-10-27 12:23 编辑

Performance Statistics   2013-01-15 10:34:00 - 2013-01-15 10:34:30
Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
CatchFindLikeByAppId                                1.5           1          10         0.8         505
queryCardFeeds                                         48.7          29          72        12.9          14
card.cardFeed                                            66.7          44          85        12.9          14
collect.app.item.list                                    27.0          27          27         0.0           1
findAuction                                                12.9           3          33         5.2         242
findP4pItem                                              43.6          17         613        23.4        1283


Performance Statistics   2013-01-15 10:34:30 - 2013-01-15 10:35:00
Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
CatchFindLikeByAppId                                1.6           1          10         0.8         503
queryCardFeeds                                         58.7          29          72        12.5          15
card.cardFeed                                            46.7          44          84        11.9          20
collect.app.item.list                                    37.0          27          27         0.0           1
findAuction                                                22.9           3          33         1.2         342
findP4pItem                                              13.6          17         613        22.4        1383


要取到最后一个字符串“Performance Statistics”以后的行

求解

论坛徽章:
8
戌狗
日期:2014-09-26 16:39:44水瓶座
日期:2014-10-10 02:06:57金牛座
日期:2014-10-11 23:04:042015亚冠之首尔
日期:2015-06-23 15:37:0015-16赛季CBA联赛之天津
日期:2016-01-22 18:58:2915-16赛季CBA联赛之佛山
日期:2016-05-31 19:18:0815-16赛季CBA联赛之同曦
日期:2016-08-10 16:26:3315-16赛季CBA联赛之辽宁
日期:2018-01-10 11:47:40
2 [报告]
发表于 2014-10-27 12:15 |只看该作者
什么意思 不要Performance Statistics这行?
要是这样
  1. awk '/^Performance Statistics/{next}1'  file
复制代码

论坛徽章:
0
3 [报告]
发表于 2014-10-27 12:18 |只看该作者
回复 2# wiliiwin


   
是整个文件最后一次出现Performance  Statistics后面的行,不是所有的Performance Statistics

论坛徽章:
0
4 [报告]
发表于 2014-10-27 12:29 |只看该作者
sed -e :a -e "N;/Performance Statistics/s/.*\n//" -e '$!ba' file

OK ,,自己搜索到了。。不过不太明白,能解释下最好了。

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
5 [报告]
发表于 2014-10-27 12:41 |只看该作者
回复 4# zerohly


如果对sed的执行流程不清楚,用sedsed看看执行过程就懂了:
  1. ./sedsed -d --hide=hold -e :a -e "N;/Performance Statistics/s/.*\n//" -e '$!ba' file
复制代码
http://sedsed.sourceforge.net/

如果对sed的基础命令不清楚,看看教程先:
http://bbs.chinaunix.net/thread-452942-1-1.html

论坛徽章:
30
申猴
日期:2014-04-10 09:43:532015年亚洲杯纪念徽章
日期:2015-03-20 14:40:232015亚冠之阿尔纳斯尔
日期:2015-06-02 18:59:042015亚冠之阿尔希拉尔
日期:2015-06-30 15:22:572015亚冠之大阪钢巴
日期:2015-07-20 10:44:332015亚冠之阿尔纳斯尔
日期:2015-10-28 14:57:5215-16赛季CBA联赛之新疆
日期:2015-12-25 10:18:45黑曼巴
日期:2016-06-26 21:39:5315-16赛季CBA联赛之山西
日期:2016-07-25 21:54:2715-16赛季CBA联赛之北京
日期:2016-10-27 12:07:2315-16赛季CBA联赛之八一
日期:2017-07-07 16:39:0915-16赛季CBA联赛之吉林
日期:2017-09-04 12:14:43
6 [报告]
发表于 2014-10-27 13:25 |只看该作者
回复 1# zerohly
awk -v RS="Performance" '{a[NR]=$0}END{print "Performance"a[NR]}' FILE


   

论坛徽章:
8
戌狗
日期:2014-09-26 16:39:44水瓶座
日期:2014-10-10 02:06:57金牛座
日期:2014-10-11 23:04:042015亚冠之首尔
日期:2015-06-23 15:37:0015-16赛季CBA联赛之天津
日期:2016-01-22 18:58:2915-16赛季CBA联赛之佛山
日期:2016-05-31 19:18:0815-16赛季CBA联赛之同曦
日期:2016-08-10 16:26:3315-16赛季CBA联赛之辽宁
日期:2018-01-10 11:47:40
7 [报告]
发表于 2014-10-27 13:50 |只看该作者
哦  没有理解意思
  1. awk '/^$/{next};/^Performance Statistics/{delete b;n=NR;next}{b[++n]=$0}END{for(x in b){print b[x]}}'  29.txt |sort -k1
复制代码
这样就可以了

论坛徽章:
769
金牛座
日期: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
8 [报告]
发表于 2014-10-27 13:51 |只看该作者
本帖最后由 Herowinter 于 2014-10-27 13:53 编辑

回复 1# zerohly
  1. sed -n '/^Performance Statistics/{:a;N;$!{/\n\s*$/!ba};h};${g;p}' i
  2. Performance Statistics   2013-01-15 10:34:30 - 2013-01-15 10:35:00
  3. Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
  4. CatchFindLikeByAppId                                1.6           1          10         0.8         503
  5. queryCardFeeds                                         58.7          29          72        12.5          15
  6. card.cardFeed                                            46.7          44          84        11.9          20
  7. collect.app.item.list                                    37.0          27          27         0.0           1
  8. findAuction                                                22.9           3          33         1.2         342
  9. findP4pItem                                              13.6          17         613        22.4        1383
复制代码

论坛徽章:
9
射手座
日期:2014-07-29 13:05:07双子座
日期:2015-01-11 17:01:522015年亚洲杯之朝鲜
日期:2015-02-01 16:14:282015亚冠之阿尔艾因
日期:2015-06-04 17:54:40数据库技术版块每日发帖之星
日期:2015-08-02 06:20:00数据库技术版块每日发帖之星
日期:2015-10-28 06:20:00数据库技术版块每日发帖之星
日期:2015-11-26 06:20:0015-16赛季CBA联赛之天津
日期:2016-06-20 17:09:2015-16赛季CBA联赛之青岛
日期:2017-02-26 15:54:19
9 [报告]
发表于 2014-10-27 14:15 |只看该作者
  1. tac bb01.txt |sed '/Performance Statistics/q'|tac
复制代码

论坛徽章:
0
10 [报告]
发表于 2014-10-27 15:19 |只看该作者
本帖最后由 love_shift 于 2014-10-27 15:29 编辑
  1. [root@localhost tmp]#  sed -n ':1;1!n;/Performance/!{H;$!b1;g;p};h' tmp
  2. Performance Statistics   2013-01-15 10:34:30 - 2013-01-15 10:35:00
  3. CatchFindLikeByAppId                                1.6           1          10         0.8         503
  4. queryCardFeeds                                         58.7          29          72        12.5          15
  5. card.cardFeed                                            46.7          44          84        11.9          20
  6. collect.app.item.list                                    37.0          27          27         0.0           1
  7. findAuction                                                22.9           3          33         1.2         342
  8. findP4pItem                                              13.6          17         613        22.4        1383
复制代码
  1. [root@localhost tmp]# awk '/Performance/{s=""}{s=s?s"\n"$0:$0}END{print s}' tmp
  2. Performance Statistics   2013-01-15 10:34:30 - 2013-01-15 10:35:00
  3. Tag                                                  Avg(ms)         Min         Max     Std Dev       Count
  4. CatchFindLikeByAppId                                1.6           1          10         0.8         503
  5. queryCardFeeds                                         58.7          29          72        12.5          15
  6. card.cardFeed                                            46.7          44          84        11.9          20
  7. collect.app.item.list                                    37.0          27          27         0.0           1
  8. findAuction                                                22.9           3          33         1.2         342
  9. findP4pItem                                              13.6          17         613        22.4        1383
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP