免费注册 查看新帖 |

Chinaunix

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

[文本处理] 求教 文本处理 在特定字段后添加 字段 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2014-04-02 17:11 |只看该作者
回复 5# yestreenstars
大神,我今天抽空研究了一下,发现使用下面的也可以达到目的
sed '/key-word/,/^add/s/}/special {test}; &/' file

那么为什么要多加一个add ? 有什么特殊意义?
sed '/key-word/,/^add/{/^add/s/}/special {test}; &/}'

   

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
12 [报告]
发表于 2014-04-02 17:15 |只看该作者
回复 11# shintoky

[root@localhost ~]# sed '/key-word/,/^add/{/^add/s/}/special {test}; &/}' i
remote dc-123 { file("/aa/key-word/aa" owner("a") group("b") perm (0640)); };
filter f_dc-123 { host("dc-123") and not match("xyz" value(MSG)); };
add { source(net); filter(f_dc-123); remote(dc-123); special {test}; };
remote dc-124 { file("/aa/non-keyword/aa" owner("a") group("b") perm (0640)); };
filter f_dc-124 { host("dc-124") and not match("xyz" value(MSG)); };
add { source(net); filter(f_dc-124); remote(dc-124); };

[root@localhost ~]# sed '/key-word/,/^add/s/}/special {test}; &/' i
remote dc-123 { file("/aa/key-word/aa" owner("a") group("b") perm (0640)); special {test}; };
filter f_dc-123 { host("dc-123") and not match("xyz" value(MSG)); special {test}; };
add { source(net); filter(f_dc-123); remote(dc-123); special {test}; };
remote dc-124 { file("/aa/non-keyword/aa" owner("a") group("b") perm (0640)); };
filter f_dc-124 { host("dc-124") and not match("xyz" value(MSG)); };
add { source(net); filter(f_dc-124); remote(dc-124); };   

论坛徽章:
0
13 [报告]
发表于 2014-04-03 15:18 |只看该作者
回复 12# yestreenstars
哦哦 对哦 还是想不明白为什么要 多加一个^add ? 不是已经定义 从  add 开始修改么?

   

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
14 [报告]
发表于 2014-04-03 15:50 |只看该作者
回复 13# shintoky

/key-word/,/^add/相当于匹配1-3行,如果不在s/}/special {test}; &/操作前加上/^add/的话,它会把1-3的都替换掉,但是如果加上之后,就只会对匹配到/^add/的行,也就是第3行进行替换。
   

论坛徽章:
0
15 [报告]
发表于 2014-04-04 09:12 |只看该作者
回复 14# yestreenstars


    恩恩 现在明白了 多谢赐教
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP