加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 从最后一次出现的模式打印出所有行的简单而快速的UNIX命

发布时间:2020-12-15 22:02:44 所属栏目:大数据 来源:网络整理
导读:哪个是简单而快速的UNIX命令,可以将最后一次出现的模式的所有行打印到文件的末尾? sed -n '/pattern/,$p' file 这个sed命令从第一次发生开始. 解决方法 这可能适用于您(GNU sed): sed 'H;/pattern/h;$!d;x;//!d' file 将最后一个模式和最后一个模式保留下
哪个是简单而快速的UNIX命令,可以将最后一次出现的模式的所有行打印到文件的末尾?
sed -n '/pattern/,$p' file

这个sed命令从第一次发生开始.

解决方法

这可能适用于您(GNU sed):
sed 'H;/pattern/h;$!d;x;//!d' file

将最后一个模式和最后一个模式保留下来,并在文件末尾打印出来.

或者在awk中使用相同的方法:

awk '{x=x ORS $0};/pattern/{x=$0};END{if(x ~ //)print x}' file

然而在我的机器上jaypals方式与sed似乎是最快的:

tac file | sed '/pattern/q' | tac

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读