Fish Shell:
Att arbeta med XML
Hur man gör:
Fish har ingen inbyggd XML-tolkning, så du kommer att luta dig mot externa verktyg som xmllint
eller xmlstarlet
. Här är en kodsnutt för att läsa värden:
# Tolka XML med xmlstarlet
echo '<root><element>Hej Världen</element></root>' | xmlstarlet sel -t -v "/root/element"
Utdata:
Hej Världen
För att redigera XML, använd detta:
# Redigera XML-element med xmlstarlet
echo '<root><element>Gammalt Värde</element></root>' | xmlstarlet ed -u "/root/element" -v 'Nytt Värde'
Utdata:
<?xml version="1.0"?>
<root>
<element>Nytt Värde</element>
</root>
Djupdykning:
XML har funnits sedan slutet av 90-talet, skapat för läsbarhet och maskinvänlighet. Medan JSON har tagit över en del av XML:s popularitet på grund av enkelheten, är XML fortfarande djupt rotat där dokumentvalidering och namnrymder är nyckeln.
Alternativ? Självklart – JSON, YAML, eller till och med binära format som Protocol Buffers för de prestandaintensiva apparna. Men XML:s schema och XSLT (för XML-transformationer) kan vara deal-breakers för komplexa scenarier där robusthet är viktigt.
Under huven använder verktyg som xmlstarlet
kraftfulla bibliotek som libxml2, som ger dig XPath och XQuery för finjusterad XML-justering. Dessa är inte bara XML-verktyg utan portar till DOM-manipulation, eftersom du skulle tillämpa liknande koncept i vilket språk som helst som rör vid XML.