Chinaunix

标题: 如何实现匹配成功则进行替换,匹配不成功则添加新行?[已解决] [打印本页]

作者: kwokcn    时间: 2009-03-23 11:22
标题: 如何实现匹配成功则进行替换,匹配不成功则添加新行?[已解决]
各位,如何使用一句shell实现以下功能呢?

使用正则/^a=/对文件进行匹配:
1、如果匹配到a=,则修改该行为a=1;
2、如果没有匹配到a=,则在文件最后添加新行a=1。

替换添加都好处理,但不知道怎么判断“有没有匹配到”正则表达式,望各位指点一二。

[ 本帖最后由 kwokcn 于 2009-3-23 11:30 编辑 ]
作者: merlin852    时间: 2009-03-23 11:25
!是做什么用的
作者: ly5066113    时间: 2009-03-23 11:25
标题: 回复 #1 kwokcn 的帖子
awk '/^a=/{key=1;$0="a=1"}1;END{if(! key) print "a=1"}' urfile

[ 本帖最后由 ly5066113 于 2009-3-23 11:30 编辑 ]
作者: kwokcn    时间: 2009-03-23 11:29
thx all ~ :)




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2