bash - unterminated address regex on sed command -


im trying write xml tag in file. , want above tag

script.sh

sudo chmod 777 attribute-filter.xml  configure_attribute_filter_tag1='<afp:attributefilterpolicy id="uid">'  configure_attribute_filter_tag12='</afp:attributefilterpolicy>'   configure_attribute_filter_var='<afp:attributefilterpolicy id="releasetransientidtoanyone">'       sed -i '/'$configure_attribute_filter_var'/i \'"$configure_attribute_filter_tag1"'' attribute-filter.xml      sed -i '/'$configure_attribute_filter_var'/i \'"$configure_attribute_filter_tag12"'' attribute-filter.xml 

attribute-filter.xml

<afp:attributefilterpolicy id="releasetransientidtoanyone">     <afp:policyrequirementrule xsi:type="basic:any"/>      <afp:attributerule attributeid="transientid">         <afp:permitvaluerule xsi:type="basic:any"/>     </afp:attributerule>  </afp:attributefilterpolicy> 

expected result:

    <afp:attributefilterpolicygroup id="shibbolethfilterpolicy"                                     xmlns:afp="urn:mace:shibboleth:2.0:afp" xmlns:basic="urn:mace:shibboleth:2.0:afp:mf:basic"                                      xmlns:saml="urn:mace:shibboleth:2.0:afp:mf:saml" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"                                      xsi:schemalocation="urn:mace:shibboleth:2.0:afp classpath:/schema/shibboleth-2.0-afp.xsd                                                         urn:mace:shibboleth:2.0:afp:mf:basic classpath:/schema/shibboleth-2.0-afp-mf-basic.xsd                                                         urn:mace:shibboleth:2.0:afp:mf:saml classpath:/schema/shibboleth-2.0-afp-mf-saml.xsd">    <afp:attributefilterpolicy id="uid">     </afp:attributefilterpolicy>          <afp:attributefilterpolicy id="releasetransientidtoanyone">             <afp:policyrequirementrule xsi:type="basic:any"/>              <afp:attributerule attributeid="transientid">                 <afp:permitvaluerule xsi:type="basic:any"/>             </afp:attributerule>          </afp:attributefilterpolicy>     </afp:attributefilterpolicygroup> 

the log when execute script.sh

sed: -e expression #1, char 27: unterminated address regex sed: -e expression #1, char 27: unterminated address regex 

can 1 me identify issue?

drop single quotes sed call:

sed -i "/$configure_attribute_filter_var/i $configure_attribute_filter_tag1" attribute-filter.xml 

your expected result includes afp:attributefilterpolicygroup element absent rom attribute_filter.xml specify, take it, actual file contains said element.

reconsider whether wish transform serialized tree structure line-oriented tool sed.


Comments

Popular posts from this blog

Java 3D LWJGL collision -

spring - SubProtocolWebSocketHandler - No handlers -

methods - python can't use function in submodule -