<?xml version='1.0' encoding='UTF-8'?>
<star ABC="90" ABCType="Catch" endDateTime="2020-12-30T23:59:59" startDateTime="2010-08-10T06:00:00" timePeriodInDays="1" xmlns="urn:xxx:dyn:xxx:version01">
<tpName>seg</tpName>
<Instance endDateTime="2016-06-08T00:01:00"
startDateTime="2016-06-08T00:01:00">
<Id>PASS1</Id>
</Instance>
<Instance endDateTime="2016-06-10T00:00:00"
startDateTime="2016-06- 08T00:01:00">
<Id>PASS2"</Id>
</Instance>
</star>
Ich bin neu in xmlstartlet. In dem obigen Code versuche ich, die startDateTime zu "AAAA" von Beispiel zu ändern, wo Id PASS1 ist. Ich habe versucht, die folgenden zu tun:xmlstarlet wie ein Attribut aktualisieren basierend auf Subelement Wert
xml ed -N w=urn:xxx:dyn:xxx:version01 -u "/w:star/w:Instance[@w:startDateTime"]/@w:startDateTime" -v "AAAA" 1.xml
aber immer folgende Fehler:
Keiner der XPaths abgestimmt; Um einen Knoten im Standard-Namespace zu finden, verwenden Sie '' als Präfix (siehe Abschnitt 5.1 im Handbuch). Zum Beispiel Verwendung/: Knoten statt/Knoten
Dank Daniel. Es funktioniert jetzt. Danke, dass Sie mir beigebracht haben, dass ich die Attribute in meinem XPath nicht voranstellen muss. – seema
@seema - Gern geschehen. Können Sie diese Antwort akzeptieren, indem Sie auf das Häkchen (✅) daneben klicken? Vielen Dank! –