0

cluster-address (サーバーの数) のカウントが必要な場合は、以下の xml を参照してください。誰でも私を助けることができますか?私は非常に多くのことを試しましたが、うまくいきません。

cluster-address 内のサーバーは、コンマで区切られています。

<name>WeblogicCluster</name>
<multicast-address>1.1.1.1.1</multicast-address>
<cluster-messaging-mode>unicast</cluster-messaging-mode>
<cluster-address>server1.domain.com,server2.domain.com</cluster-address>
<weblogic-plugin-enabled>true</weblogic-plugin-enabled>
<frontend-host>server.domain.com</frontend-host>

bashではこのように解決しましたが、xmlstarletでこれを行うことを望んでいましたが、何かアイデアはありますか?

#!/bin/sh
address="$(xmlstarlet sel -N d=http://xmlns.oracle.com/weblogic/domain -t -v "/d:domain/d:cluster/d:cluster-address" config.xml 2>/dev/null)"
number=`echo ${address//","/" "} | wc -w`
echo $number
4

1 に答える 1

0

xml sel -N d=http://xmlns.oracle.com/weblogic/domain -t -v \
 "count(str:split(/d:domain/d:cluster/d:cluster-address, ','))" \
 config.xml

于 2012-05-10T02:18:31.893 に答える