您的位置:首页 > 运维架构 > Shell

shell脚本的sed命令使用小结

2014-07-30 10:23 393 查看
今天写了一个脚本,主要是完成一个文件内容的插入与替换,所以用到了sed命令,下面是脚本中用到的四个sed命令;

第一条命令:

content里面含有$,/等特殊字符

sed -i '/<properties>/a\'"`echo ${content}`"  config.xml

第二条命令:

b=http://www.baidu.com

sed -i 's#${jenkinsVo.reposUrl}'#${b}#g    config.xml

第三条命令:

sed -i '/<remote>/d'   config.xml

第四条命令:

sed -i '/<hudson.scm.SubversionSCM_-ModuleLocation>/a\<remote>${reposUrl}${revision}</remote>'   config.xml

第一条命令中是一个插入命令,第四条也是同样的,但第四条中的插入字符串不是一个变量,所以按照sed的正常语法写就可以了,第一条命令中的插入字符是一个变量,而且变量中还含有特殊字符,如果是想变量里面的内容当成普通字符串操作,就需要如第一条那样写,如果不是,则可以直接写成“${content}”

第二条命令中的替换字符含有/,这个是sed用来做分隔符的,所以会导致替换出现问题,sed也支持#做分隔符,所以此处用#来做分割,顺利解决问题;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell sed