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也支持#做分隔符,所以此处用#来做分割,顺利解决问题;
第一条命令:
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命令编辑文本
- linux下shell脚本中sed命令使用变量
- shell脚本学习-8(sed命令学习)
- sed 命令的使用及shell判断语句
- shell脚本中sed的使用
- 使用bat命令或shell脚本调用java程序
- 使用shell命令sed将指定目录下的所有文件中指定的字符串替换成指定的字符串
- 使用trap/tee命令/调试钩子调试Shell脚本
- shell脚本实现每秒执行一次任务 rsync命令使用
- 用来记录登录后使用命令的shell脚本
- shell命令使用sed获取ip命令
- shell脚本使用read命令从terminal读入数据
- 使用eval命令解决shell脚本中函数嵌套调用中的参数问题
- Linux下使用Shell脚本实现ftp的自动上传下载的代码小结
- shell脚本学习-6(sed命令学习)
- 脚本shell中的tr 命令使用与实例
- 使用trap/tee命令/调试钩子调试Shell脚本
- Shell脚本中cd命令使用
- Shell脚本中cd命令使用
- Linux下使用Shell脚本实现ftp的自动上传下载的代码小结