Come posso ottenere xmllint per generare più risultati del selettore xpath per gli attributi "per riga"?Ottieni xmllint per generare risultati xpath n-separati, per selettore di attributo
Prendete questo esempio:
<?xml version="1.0" encoding="ISO-8859-1"?>
<config>
<tagX key1="value1 " key2=" value2"/>
<tagY key3="value3" key4=" value4 "/>
</config>
$ xmllint example.xml --xpath "/config/*/@*"
Il risultato è:
key1="value1 " key2=" value2" key3="value3" key4=" value4 "
Quello che mi piacerebbe ottenere è:
key1="value1 "
key2=" value2"
key3="value3"
key4=" value4 "
avrei bisogno di dividere dopo e poi quelle pari virgolette numerate o esiste un modo più ordinato per farlo?
C'è una questione connessa, about the same subject tranne che è circa la raccolta di contenuti di <tag>value</tag>
, e non <tag attribute="value" />
Questo aiuto - 'echo 'cat/config/*/@ * [inizia con (nome()," chiave ")]' | xmllint --shell input.xml' – devnull
@devnull: '| grep = 'e va bene. (in realtà, no '[starts-with() ...' just '/ @ *' Ho usato "key1, key2 ..." come variabili metasintattiche, i nomi degli attributi attuali sarebbero arbitrari.) –
Sì, 'grep - v' e fatto! – devnull