匹配模式时的Sed插入值

时间:2015-05-22 14:30:52

标签: xml sed

我有一个xml文件,我需要在PurchaseOrderNumber="99503"之间的变量中插入一个值。 例如$value=001我将PurchaseOrderNumber="00199503"。 我用sed尝试了很多命令但是我试过的最后一个没有工作sed '/^PurchaseOrderNumber=\"/s/^/001/' file.xml > output.xml 你可以帮我吗

 <?xml version="1.0"?>

        <PurchaseOrder PurchaseOrderNumber="99503" OrderDate="1999-10-20">
          <Address Type="Shipping">
            <Name>Ellen Adams</Name>
            <Street>123 Maple Street</Street>
            <City>Mill Valley</City>
            <State>CA</State>
            <Zip>10999</Zip>
            <Country>USA</Country>
          </Address>
          <Address Type="Billing">
            <Name>Tai Yee</Name>
            <Street>8 Oak Avenue</Street>
            <City>Old Town</City>
            <State>PA</State>
            <Zip>95819</Zip>
            <Country>USA</Country>
          </Address>
     </PurchaseOrder>

3 个答案:

答案 0 :(得分:2)

var image = Umbraco.TypedMedia(Model.Content.GetPropertyValue<int>("image")); if (image != null) { <img src="@image.GetPropertyValue("umbracoFile")" alt=""/> }

另外,read this

答案 1 :(得分:1)

使用适当的XML处理工具来处理XML。例如,我使用了xsh

open file.xml ;
insert text '001' prepend /PurchaseOrder/@PurchaseOrderNumber ;
save :b ;

答案 2 :(得分:0)

谢谢你的工作,我也找到了一种方式,所以我发布它,如果它可以帮助任何人

sed 's/PurchaseOrderNumber=\"/&001/' file.xml > output.xml