shell解析xml文件

centos安装xml2

yum install xml2
测试文件
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">

    <properties>
        <comment>
            PowerEngine Main Configuration
        </comment>
        <entry key="CurrentMode">Mode.DEV</entry>

        <entry key="Mode.DEV">
            classpath:/config/mode/dev/peconfig.xml
        </entry>

        <entry key="Mode.TEST">
            classpath:/config/mode/test/peconfig.xml
        </entry>

        <entry key="Mode.PRO">
            classpath:/config/mode/pro/peconfig.xml
        </entry>

        <entry key="Mode.UAT">
            classpath:/config/mode/uat/peconfig.xml
        </entry>
        <entry key="CommonConfig">
            classpath:/config/pe/*.xml
            classpath:/config/dubbo/*.xml,
            classpath:/config/trs/*.xml,
            classpath:/config/db/*.xml
        </entry>
解析文件并替换内容
xml2 < test.xml > test.txt
sed -i 's#/properties/entry=Mode.DEV#/properties/entry=Mode.PRO#g' test.txt
/properties/comment=
/properties/comment=        PowerEngine Main Configuration
/properties/comment=
/properties/entry/@key=CurrentMode
/properties/entry=Mode.DEV
/properties/entry
/properties/entry/@key=Mode.DEV
/properties/entry=
/properties/entry=      classpath:/config/mode/dev/peconfig.xml
/properties/entry=
/properties/entry
/properties/entry/@key=Mode.TEST
/properties/entry=
/properties/entry=      classpath:/config/mode/test/peconfig.xml
/properties/entry=
/properties/entry
/properties/entry/@key=Mode.PRO
/properties/entry=
/properties/entry=      classpath:/config/mode/pro/peconfig.xml
/properties/entry=
/properties/entry
/properties/entry/@key=Mode.UAT
/properties/entry=
/properties/entry=      classpath:/config/mode/uat/peconfig.xml
/properties/entry=
/properties/entry
/properties/entry/@key=CommonConfig
/properties/entry=
/properties/entry=      classpath:/config/pe/*.xml
/properties/entry=      classpath:/config/dubbo/*.xml,
/properties/entry=      classpath:/config/trs/*.xml,
/properties/entry=      classpath:/config/db/*.xml
/properties/entry=
恢复为xml格式文件
echo '<?xml version="1.0" encoding="UTF-8" ?>' > test.xml
echo '<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">' >> test.xml
2xml < test.txt >> test.xml

转载于:https://www.cnblogs.com/peitianwang/p/11304598.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值