sed语法更新下面的xml语句

时间:2016-02-04 06:22:46

标签: regex xml sed

我需要在XML文件中更新一些属性值,并且正在考虑利用sed进行查找和替换。我无法达到我想要的输出。

当前

<categoryName>Mobiles & Tablets</categoryName>

替换为

<categoryName>Mobiles</categoryName>

1 个答案:

答案 0 :(得分:1)

使用此搜索和替换。

sed  -i 's|Mobiles & Tablets|Mobiles|g' filename

使用此选项将输出保存在另一个文件中,并与原始文件进行比较(如果这是您想要的)。稍后您可以用新文件替换旧文件

sed  's|Mobiles & Tablets|Mobiles|g' filename >newfile

编辑:添加了示例

$> cat tt01
<subCategoryId>175</subCategoryId>
   <categoryId>12</categoryId>
<categoryName>Mobiles & Tablets</categoryName>
<mrp>1111</mrp>
<offerPrice>777</offerPrice>
$> 
$> sed -i 's|Mobiles & Tablets|Mobiles|g' tt01
$> cat tt01
<subCategoryId>175</subCategoryId>
   <categoryId>12</categoryId>
<categoryName>Mobiles</categoryName>
<mrp>1111</mrp>
<offerPrice>777</offerPrice>