码迷,mamicode.com
首页 > 其他好文 > 详细

[SHELL] 修改xml的内容

时间:2014-07-18 14:17:08      阅读:329      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   re   c   

解析和修改xml用python比较方便,但如果不方便使用python,可以用sed命令简单替换

例如,欲替换下面一行中的端口号的值:

<param name="ftpPort">21</param>

可以使用:

new_port="22"
sed /\<ftpPort\>/s/[0-9]\{2,5\}/‘"$new_port"‘/ old.xml > new.xml

说明:

<和>用于单词边界的匹配,二者连用相当于整词匹配

s表示对匹配的行进行替换

[0-9]{2,5}表示替换的源为2~5位数字,为正则表达式

当然,对一些在SHELL里面有特殊含义的字符,要加\转义后传递给sed

‘"$new_port"‘这里用了SHELL里面一个小技巧,将变量的值传递给了sed,确保将端口替换为22而不是$new_port这个字符串,大家可以试一下将$new_port前后4个引号去掉的效果。

[SHELL] 修改xml的内容,布布扣,bubuko.com

[SHELL] 修改xml的内容

标签:style   blog   color   使用   re   c   

原文地址:http://www.cnblogs.com/tuzkee/p/3852807.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!