次の XML があります。
<application>
<name>Activity Monitor.app</name>
<path>/Applications/Utilities/Activity Monitor.app</path>
<version>10.8.0< /version></application>
<application>
<name>Adobe Flash Player Install Manager.app</name>
<path>/Applications/Utilities/Adobe Flash Player Install Manager.app</path>
<version>11.3.300.268</version></application>
XMLStarlet を使用して、次の出力を取得したいと思います。
<package name="Activity Monitor.app">
<attribute name="Path">/Applications/Utilities/Activity Monitor.app</attribute>
<attribute name="Ver">10.8.0</attribute >
<package name="Adobe Flash Player Install Manager.app">
<attribute name="Path">/Applications/Utilities/Adobe Flash Player Install Manager.app</attribute>
<attribute name="Ver">11.3.300.268</attribute>
私はコマンドを試しました:
xml sel -t -v "computer/software/applications/application/path" -v "computer/software/applications/application/name" -v computer/software/applications/application/version
ただし、これは単にすべてのアプリケーション、次にすべてのパス、次にすべてのバージョンをリストしているだけです。私は XMLStarlet の初心者なので、助けていただければ幸いです。ありがとう!