免费注册 查看新帖 |

Chinaunix

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

用sed如何删除2至10行与aaa匹配的行? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-02-20 22:54 |只看该作者 |倒序浏览
???

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2003-02-21 01:12 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

  1. sed -n '2,10p' filename | sed '/aaa/d'
复制代码

论坛徽章:
0
3 [报告]
发表于 2003-02-21 08:34 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

sed -n '2,10p' filename | sed '/aaa/d' 有问题

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
4 [报告]
发表于 2003-02-21 08:37 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

solaris 7, Ksh ,  no problem.

论坛徽章:
0
5 [报告]
发表于 2003-02-21 08:40 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

应该没有问题。
我试过了。
不妨你再试一下这个。
sed -n '2,10p' filename | sed -e '/aaa/d'

论坛徽章:
0
6 [报告]
发表于 2003-02-21 08:47 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

人家要的是删除2-10行含有aaa内容后剩下的内容,2-10以外含不含有aaa则无所谓。
而你的命令却是保留了2-10行不含aaa的内容,其他行都没显示出来,当然不行啦。

论坛徽章:
0
7 [报告]
发表于 2003-02-21 08:53 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

试一试:

awk '{++n; if(n>=2 &amp;&amp; n<=10){if($0 ~ /aaa/)next; else print $0;}else print $0;}' filename

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2003-02-21 09:12 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
9 [报告]
发表于 2003-02-21 09:13 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

谢英雄指正,改一下

  1. sed -n '1p' filename; sed -n '2,10p' filename | sed '/aaa/d' ; sed -n '10,$p' filename
复制代码

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
10 [报告]
发表于 2003-02-21 09:37 |只看该作者

用sed如何删除2至10行与aaa匹配的行?

miling的在逻辑上比较巧妙,属技巧型
俺是力量型打法
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP