范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Linux三剑客之sed多行处理

  业务爸爸:小毛驴我有个历史交易记录数据,以ID开头(如ID apple450001315857834 )到 TIME结束(如TIME 1673615211 )表示一条完整的记录,其中中间有RFTIME行(如RFTIME 1673696951) 表示交易正常,反正是交易异常。现在需要把交易异常的记录拿出来。数据如下:root@VM-2-15-ubuntu:~# cat list.txt  ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001315857834 PR      25 RFTIME  1673696951 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017
  小毛驴:安排!
  拿到这个需求,小毛驴第一就想到了用sed多行处理,而且也洋洋洒洒的写出来第一个版本:sed -nr ":a;N;/TIME/!ba;/RFTIME/!p;" list.txt  root@VM-2-15-ubuntu:~# sed -nr ":a;N;/TIME/!ba;/RFTIME/!p;" list.txt  SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 SAVEID  xmlCAtgyXH TIME    1673615211 SAVEID  xmlCAtgyXH TIME    1673615211 SAVEID  xmlCAtgyXH TIME    1673615211 SAVEID  xmlCAtgyXH TIME    1673615211 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017
  很明显上面的不符合需求,这个时候,很明显是数据锚定有问题, 此时我只能请出sed的debug工具---sedsed。
  sedsed安装cd /usr/local/sbin wget https://raw.githubusercontent.com/aureliojargas/sedsed/main/sedsed.py wget https://raw.githubusercontent.com/aureliojargas/sedparse/main/sedparse.py mv sedsed.py sedsed chmod +x sedsed  sed三个空间 如下图。 PATT: sedsed输出显示模式空间缓冲区的内容 COMM: 显示正在执行的命令 HOLD: 显示hold sapce缓冲区的内容  sed一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space); 接着用sed命令处理缓冲区(pattern space)中的内容,处理完成后,把缓冲区(pattern space)的内容送往屏幕. 接着清空缓冲区(pattern space),处理下一行,这样不断重复,直到文件末尾.  sed一次处理一行内容,处理时,先读入一行,去掉尾部换行符,存入pattern space,执行编辑命令. 处理完毕,除非加了-n参数,把现在的pattern space打印出来,在后边打印曾去掉的换行符.  pattern space(模式空间)相当于sed车间把流内容在这里处理. hold space(保留空间)相当于仓库,加工的半成品在这里临时储存(当然加工完的成品也在这里存储).
  开始调试PATT:ID      apple450001315857834$ //模式空间 读入第一行 HOLD:$   // 此时hold sapce为空 COMM::a  // 执行条件选择a COMM:N   // 追加读一行数据 PATT:ID      apple450001315857834 PR      25$ // 模式空间此时内容 HOLD:$ // 此时hold sapce为空 COMM:/TIME/ !b a  //执行条件选择a,不满足,继续读取下一行 COMM:N PATT:ID      apple450001315857834 PR      25 RFTIME  1673696951$ // 模式空间此时内容 HOLD:$  // 此时hold sapce为空 COMM:/TIME/ !b a //执行条件选择a,满足了---竟然满足了。问题就出现在这了。 COMM:/RFTIME/ !p // 满足就不打印 PATT:ID      apple450001315857834 PR      25 RFTIME  1673696951$ // 模式空间此时内容将会被清空 HOLD:$  PATT:SAVEID  xmlCAtgyXH$ // 模式空间读入一个新行 HOLD:$ COMM::a COMM:N PATT:SAVEID  xmlCAtgyXH TIME    1673615211$ HOLD:$ COMM:/TIME/ !b a
  通过上面debug我们可以看出是因为 RFTIME 匹配到TIME,这个真是不细心的的原因。 改(尝试了30多分钟,才用debug工具看出来,真是xx。)root@VM-2-15-ubuntu:~# sed -nr ":a;N;/bTIME/!ba;/RFTIME/!p;" list.txt  ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017 ID      apple450001216057835 PR      25 SAVEID  xmlCAtgyXH TIME    1663042017

皮肤偏黄暗沉的女人,秋冬多穿这4种高级色,显白还有气质在服饰中最有渲染力和显眼度的,不是标新立异的服饰设计,而是色彩。颜色选不对,对整体服饰的质感与视觉减分。协调舒适的色彩,再普通的服饰,都能变得绚丽。身为黄皮肤的亚洲人,我们没有欧美寒冬还是要先保暖,跟着时髦精们穿,时尚保暖两手抓建议女生冬季别忘记保暖,27套温暖过冬穿搭,照着穿也很高级。不知道何时起,露脚脖穿搭成了时尚潮流。看着很多年轻人在寒冷的冬季依旧穿着九分裤展现自己纤细的脚踝的时候,不得不感叹自己老冬天这样穿裙子,时髦又保暖晚上好啊前阵子发了可以一键复制的裤子鞋子冬日搭配组合(戳这里可以回顾),评论区很多人想看裙子版本的。今天就来!天冷后你们是不是没那么爱穿裙子了?相比裤子,裙子的搭配难度会更高。很多中年女人少穿羽绒服了!今冬流行毛呢外套,搭配长裤短裤特时髦对于时髦精来说,追求时髦与洋气固然很重要,但是她们还会兼顾保暖,不会一味地去做反季节战士,所以这点还是很值得大家学习的,这才是时髦精应有的搭配,如果你对穿搭的了解不够深,不妨试试毛年过六十穿外套少穿奶奶装,瞧瞧网红奶奶,打扮既时髦又高级很多人过了60岁后,在穿衣打扮上穿来穿去都是一些老气的奶奶装,比如大红大绿的花棉袄或者很喜庆的红色羽绒服,殊不着装老气过时,很多程度上都是因为这些外套。毕竟在冬季,外套在一套造型中阔腿裤算什么?今年奶奶裤火了,毛衣外套随意配,更优雅显瘦天气越来越冷了,大家冬天的衣服是不是都从小裙子换上了阔腿裤,阔腿裤是很百搭,但是总穿腻了吧,你绝对想不到今年奶奶裤火起来了!显瘦时尚更百搭,不管是毛衣还是外套,随意配,轻松get出帽子对女人来说有多重要,看完这些对比照后,才明白发型不值一提为什么有的人能用最普通的服装穿出最亮眼的风姿,就是因为他们善于利用细节。细节不需要我们大费周章,也不需要高深的技巧。这个冬天,区别于你和时尚博主的关键,就在于一顶帽子。帽子对于我们今年秋冬最火的5款发型!超显脸小还不挑人姐妹们晚上好鸭今天发型师芽芽上线啦!看完文章记得去留言,说不定幸运鹅就是你哦这不马上就要到新的一年了嘛,感觉自己也好久没换发型了。最近总想捯饬一下自己的头发,想着新年要有新面貌!有解救你的情绪的心情说说,发朋友圈人气超高1这个社会,不要去试探别人,试探了,你就知道什么叫全剧终。2我们每个人都生活在各自的过去中,人们会用一分钟的时间去认识一个人,用一小时的时间去喜欢一个人,再用一天的时间爱上一个人,巴黎咖啡馆和博物馆保留独创性和差异性咖啡馆和博物馆都是巴黎人日常生活的重要部分。这种与生活的紧密联结构成了巴黎独特的气质。回顾历史,伴随着法国社会和经济发展而诞生的咖啡馆文化,反过来也推动了法国文学艺术的发展。哲学家全红婵久违亮相!长高了,头发留长瘦了不少,女大十八变更漂亮再过不到2个月,北京冬奥会就将正式开幕,我国的体育健儿们也在用各种方式宣传这届冬雪盛会,奥运跳水冠军全红婵时隔许久露面,还参加了央视的视频录制,为即将开幕的冬奥会呐喊助威。除了变得
伊莉雅这么可爱的娃,是如何培养出来的?大家好,我是魔术师杀手,昨天带着自家的娃娃散步,引来诸多羡慕的目光,看着她桃金色的秀发,洋娃娃一般可爱的脸蛋,娇小而带来幸福感的平坦曲线,伊莉雅为什么会这么可爱!这么可爱的娃娃是如摇头晃脑五官乱飞,明明就不会演戏,就别硬尬演技派了近日,孟美岐带着我心飞扬回归大众视线。但是,电影上映后,票房和口碑却非常差,孟美岐的演技也备受诟病。虽说现在是流量为王,但有流量长得美,并不代表有演技,所以电影的票房扑街,只能怪投杨幂直播突然比耶,可爱真是猝不及防,大幂幂到底有多爱剪刀手近日,杨幂参加活动,黑色大波浪,搭配一袭性感黑色豹纹长裙,可谓是性感万分。杨幂活动直播中,大幂幂突然对着镜头比耶,这可爱真是来的猝不及防!直播中可以看出,杨幂的状态十分的好,网友直娱乐圈最新爆料,众多明星都在内,大瓜小瓜消息都有,吃瓜拿走了名媛关颖晒封面大片,3月6日下午,名媛关颖在个人社交平台分享了一组为某时尚杂志拍摄的封面大片。照片中,已经是三个孩子妈妈的关颖状态非常好,她时而穿着深V裙秀辣妈身材,时而又是干练的长一副娃娃脸的三个女星,即使30岁也能演初中生,一个比一个童真娱乐圈是一个鱼龙混杂的圈子,有的已经人老珠黄年轻时为演艺事业做出了巨大的贡献,而有的更是刚刚出道成为了流量小生。然而我们今天要说的就是长着娃娃脸的女星,圈内就有着这样的几位女星,她定了!月球及深空探测未来还有这些大动作嫦娥揽月北斗指路祝融探火羲和逐日天和遨游星辰近年来,我国加快航天强国建设步伐,取得一系列辉煌成就。展望未来,我国航天还将实施哪些重大工程?十四五时期,月球及深空探测将有哪些大动作?养女儿比养儿子更难!7个分龄养育要点,女孩父母知道得越早越好我见过很多妈妈,在产房中得知自己生的是女儿时,顿时泪如雨下。这不是因为重男轻女,而是作为妈妈,不想让自己的孩子遭受自己曾经遭受过的生活之苦生产之痛。我总是认为,养育女儿比养儿子更难逃跑吧少年新角色琪琪技能一览琪琪是逃跑吧少年即将推出的一位全新角色,很多玩家都想要知道逃跑吧少年新角色琪琪技能是什么,现在为大家带来逃跑吧少年新角色琪琪技能一览。逃跑吧少年新角色琪琪技能一览1。全新逃生角色小男人刮胡子也有讲究?提醒这3个时间段内,尽量不要刮胡子胡须是男人特有的体征,胡须生长速度的快慢,主要受男性睾丸和肾上腺素的分泌,雄性激素旺盛的男性胡须生长速度快,胡须浓密,富有个人魅力。夏方养生指南每个进入青春期的男性,唇边都会慢慢地贵州一妈妈喊女儿去剁肉,随后女儿的气势让人笑喷是你让我剁的导语大人让女孩去厨房剁肉,小女孩的气势让人哭笑不得,网友看得出对肉怨念很深了。近日,在贵州黔东南,一名妈妈因为手头还有别的事情要忙,于是就要12岁的女儿去厨房帮剁肉。结果这名女子回45岁撒贝宁带娃剪头发,全程亲手抱女儿,混血龙凤胎身高猛涨太萌了撒贝宁大概是央视主持人中,恋情最受吃瓜群众关注的一位了。在撒贝宁的往日恋人中,最轰动一时的,就是章子怡。2013年1月,撒贝宁在当时主持的节目开讲啦当中,正式承认了与章子怡的恋情。