从hibernate.cfg xml文件中提取数据库配置

时间:2014-03-29 07:45:56

标签: xml regex bash

hibernate.cfg 包含数据库配置,例如用户名,密码,dbname和dbhost

    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="connection.url">jdbc:mysql://DBHOST:3306/DBNAME?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;tcpKeepAlive=true</property>
    <property name="connection.username">DBUSER</property>
    <property name="connection.password">DBPASS</property>

我需要一个bash脚本来提取这些数据。

1 个答案:

答案 0 :(得分:2)

使用xmlstarlet,您可以使用xpath。

$ xmlstarlet sel -t -v './/property[starts-with(@name, "connection.")]' hiberate.cfg 2>/dev/null ; echo
com.mysql.jdbc.Driver
jdbc:mysql://DBHOST:3306/DBNAME?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;tcpKeepAlive=true
DBUSER
DBPASS
$