免费注册 查看新帖 |

Chinaunix

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

sed 处理特殊符号求教! [复制链接]

论坛徽章:
1
2015年亚洲杯之巴林
日期:2015-04-02 09:32:18
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-03-08 21:53 |只看该作者 |倒序浏览
一文本格式如下,包括字符、单引号和括号

[root@localhost qq]# cat a.lst
name('alias');
phone('13579103349');
address('nanjing');

我想把phone('13579103349');替换成其他字符串比如abcdefg

[root@localhost qq]# echo phone\(\'13579103349\'\)\;
phone('13579103349');

[root@localhost qq]# sed -i 's/phone\(\'13579103349\'\)\;/abcdefg/g' a.lst
>

不行啊。
哪位老大帮忙下,谢谢啦。

论坛徽章:
0
2 [报告]
发表于 2010-03-08 22:03 |只看该作者
回复 1# opiopuiopoi


    sed "/phone/s/[0-9]\+/abcefg/" urfile

论坛徽章:
0
3 [报告]
发表于 2010-03-08 22:08 |只看该作者
回复 1# opiopuiopoi


     sed "/phone/s/^.\+$/abcefg/" urfile
不好意思,刚才看错了。

论坛徽章:
0
4 [报告]
发表于 2010-03-08 22:29 |只看该作者
sed -i -e s/phone\(\'13579103349\'\)/abcdefg/   a.lst

论坛徽章:
1
2015年亚洲杯之巴林
日期:2015-04-02 09:32:18
5 [报告]
发表于 2010-03-08 22:39 |只看该作者
本帖最后由 opiopuiopoi 于 2010-03-08 22:47 编辑

谢谢各位老大!!!

问题引申: 忽然想到能否用一个文本文件里的内容替换另外一个文本文件里的字符串呢?

比如文本文件a.lst的内容如下:

aaa
bbb
ccc

文本文件b.lst的内容如下:
xxx
yyy
zzz

那么我可否用b.lst的文件内容替换a.lst中的一个字符串,比如替换bbb,那么替换完成后的a.lst的内容为:
aaa
xxx
yyy
zzz
ccc

另外假如b.lst 中是含有很多特殊符号,是否会影响替换,我正在查资料做,唉,刚学sed,煎熬。

论坛徽章:
0
6 [报告]
发表于 2010-03-08 23:13 |只看该作者
sed -e '/bbb/r b.lst' -e '/bbb/d' a.lst

论坛徽章:
1
2015年亚洲杯之巴林
日期:2015-04-02 09:32:18
7 [报告]
发表于 2010-03-09 01:35 |只看该作者
sed -e '/bbb/r b.lst' -e '/bbb/d' a.lst
wing731 发表于 2010-03-08 23:13



    哈,强! r 带文件。感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP