免费注册 查看新帖 |

Chinaunix

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

请教sed "D"操作问题. [复制链接]

论坛徽章:
0
61 [报告]
发表于 2008-07-15 01:05 |只看该作者
发这个贴的7月14号,正好是我在CU注册一周年,以前是在别地方混的,来CU不长,以后还需要各位多多提携,以此贴作为周年纪念。

论坛徽章:
7
荣誉版主
日期:2011-11-23 16:44:17子鼠
日期:2014-07-24 15:38:07狮子座
日期:2014-07-24 11:00:54巨蟹座
日期:2014-07-21 19:03:10双子座
日期:2014-05-22 12:00:09卯兔
日期:2014-05-08 19:43:17卯兔
日期:2014-08-22 13:39:09
62 [报告]
发表于 2008-07-15 01:22 |只看该作者
原帖由 mystérieux 于 2008-7-15 00:09 发表


可惜括号里的管不了外面的,呵呵。

请再用纸笔模拟一遍,不要想当然。

论坛徽章:
7
荣誉版主
日期:2011-11-23 16:44:17子鼠
日期:2014-07-24 15:38:07狮子座
日期:2014-07-24 11:00:54巨蟹座
日期:2014-07-21 19:03:10双子座
日期:2014-05-22 12:00:09卯兔
日期:2014-05-08 19:43:17卯兔
日期:2014-08-22 13:39:09
63 [报告]
发表于 2008-07-15 01:25 |只看该作者
原帖由 mystérieux 于 2008-7-15 00:01 发表


不同意! D不是没有机会执行,而不是知道该怎么执行,因为这是一个特殊情况,通过:1;1,5{N;b1};这种方式使这五行都连成一个多行模式,从整体来说,这是一个单行模式,这个单行模式里面包含了一个五行的多行 ...

sed不知道你提到的所谓大行,小行以及单,多行模式,Please K.I.S.S.

论坛徽章:
0
64 [报告]
发表于 2008-07-15 08:18 |只看该作者
这位兄弟的好学是不错,但不要老抱着自己的错误想法,上面已经够清楚了,仔细读一下别人说的,我们大家的说法都是一样的,不要把简单问题复杂化,自己创造出一套复杂理论套在上面是不行的,否则只会越来越乱,因为你要不断增加你的理论来解释不同的现象,最后自己都晕了。

[ 本帖最后由 li2002 于 2008-7-15 08:20 编辑 ]

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
65 [报告]
发表于 2008-07-15 08:36 |只看该作者
原帖由 mystérieux 于 2008-7-15 00:01 发表


不同意! D不是没有机会执行,而不是知道该怎么执行,因为这是一个特殊情况,通过:1;1,5{N;b1};这种方式使这五行都连成一个多行模式,从整体来说,这是一个单行模式,这个单行模式里面包含了一个五行的多行 ...

“不同意!”

佩服mystérieux 的精神,够坚强的,老不同意,不同意就不同意啰,我不能强坚你啊。

[ 本帖最后由 blackold 于 2008-7-15 08:43 编辑 ]

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
66 [报告]
发表于 2008-07-15 08:40 |只看该作者
原帖由 r2007 于 2008-7-15 00:51 发表

仅认同第一句话。


同意。

论坛徽章:
0
67 [报告]
发表于 2008-07-15 09:23 |只看该作者
原帖由 mystérieux 于 2008-7-14 19:39 发表

怪了,你这个怎么没删干净?



这个按照3楼的解释貌似没问题的。

没想到这个贴子昨天讨论这么热烈

论坛徽章:
0
68 [报告]
发表于 2008-07-15 17:55 |只看该作者
Multiline pattern space 用的,删除第一个字符到第一个 \n 字符的部分

补充一下 :因为 D 一般是用于 Multiline pattern space 的,所以 D 删除了第1行后,即使 pattern space 还有内容(一般是 N 读入的)

                也会立即跳转到开始处执行。所以 N ,D 一般用于构造一个循环

[ 本帖最后由 ailms 于 2008-7-15 18:03 编辑 ]

论坛徽章:
0
69 [报告]
发表于 2008-07-15 18:03 |只看该作者
原帖由 r2007 于 2008-7-15 00:51 发表

仅认同第一句话。


第二句有什么问题?

论坛徽章:
7
荣誉版主
日期:2011-11-23 16:44:17子鼠
日期:2014-07-24 15:38:07狮子座
日期:2014-07-24 11:00:54巨蟹座
日期:2014-07-21 19:03:10双子座
日期:2014-05-22 12:00:09卯兔
日期:2014-05-08 19:43:17卯兔
日期:2014-08-22 13:39:09
70 [报告]
发表于 2008-07-15 18:11 |只看该作者
原帖由 无声无息 于 2008-7-15 18:03 发表


第二句有什么问题?

2、当模式空间中有内容的时候,sed是不读入新的内容的,但是仍然从头开始执行命令序列。
这是D命令的做法,并不是所有的命令都是如此

3.应该是从头开始而不是掠过其他到尾部。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP