XML on suunniteltu ihmisen luettavaksi merkintäkieleksi, mutta vain, jos se on muotoiltu kauniisti. Jos avaat XML-tiedoston, et ehkä ymmärrä sisältöä, etenkään suuren XML-tiedoston kohdalla. Voit kuitenkin tulostaa XML-tiedoston Bashissa tai Pythonissa, jotta se on helposti ihmisen luettavissa. Tämä opas esittelee erilaisia tapoja tulostaa XML:ää Linux Bashissa ja Pythonissa kauniissa.
Kuinka tulostaa XML:ää kauniisti Linux Bashissa ja Pythonissa
Pythonin kanssa työskennellessäsi saattaa ilmetä tapaus, jossa haluat tulostaa XML:n. Se voi olla ulkoinen XML-tiedosto tai XML-koodi, joka sisältyy Python-skriptiin. Linux Bashissa sinun kannattaa ehkä avata XML-tiedosto päätteessäsi nähdäksesi sen sisällön. Joka tapauksessa näemme erilaisia tapoja tulostaa XML kauniisti.
1. Pretty Print XML Pythonissa
Ennen kuin tutkimme vaihtoehtoja, seuraava on XML-tiedosto, jonka kanssa työskentelemme esimerkissämme:
Pythonissa voit työskennellä XML:n kanssa kahdella päätavalla. Oletetaan, että sinulla on annettu XML-tiedosto ulkoisena tiedostona ja haluat tulostaa sen kauniisti. Voit tuoda 'xml.dom.minidom'-kirjaston. Tuonnin jälkeen voit käyttää Python open()-komentoa lukeaksesi ulkoisen tiedoston sisällön. Sen jälkeen voit käyttää toprettyxml() tulostaaksesi ulkoisen XML-tiedoston kauniisti.
Seuraavassa esimerkissä käytämme ulkoista 'details.xml' -tiedostoamme ja luomme koodiin erilaisia muuttujia:
Voimme sitten ajaa Python-skriptimme päätteessä saadaksemme kauniin muotoillun lähdön seuraavan kuvan mukaisesti. Huomaa, että DOM Python -kirjaston käyttö auttaa muotoilemaan XML:n siististi, jolloin se on helppolukuinen kaikille Python-skriptiä ajaville:
Vaihtoehtoisesti, jos sinulla on vain pieni XML-tiedosto, voit sisällyttää sen suoraan Python-skriptiisi. Tarvitset edelleen DOM Python -kirjaston skriptisi sisäisen XML:n alustamiseen. Käytetty toiminto on sama kuin ulkoisen XML-tiedoston kanssa työskenneltäessä, vain että sisällytämme XML:n suoraan.
Katso, kuinka sisällytämme XML:n seuraavaan kuvaan:
Voit sitten suorittaa Python-skriptin kuten teimme aiemmin. Saat tulosteeseen XML-tiedostosi kauniin painetun version, kuten saimme seuraavassa tulosteessa:
Tämä vaihtoehto on voimassa vain, kun XML-tiedostossa on muutama rivi. Jos kyseessä on suuri XML-tiedosto, harkitse sen avaamista ulkoisena tiedostona.
2. Pretty Print XML Bashissa
Päätteelläsi on mahdollista tarkastella tiedostojen sisältöä, mukaan lukien XML. Voit esimerkiksi käyttää 'cat'-komentoa näyttääksesi 'details.xml'-tiedostomme sisällön. Tuloste on kuitenkin lukukelvoton huonon muotoilun vuoksi.
Voit tulostaa tämän XML-tiedoston kauniisti käyttämällä erilaisia työkaluja. Tässä käsittelemme kahta yleistä. Ensinnäkin voit käyttää 'xmlstarlet' -ohjelmaa, joka on asennettu useimpiin Linux-järjestelmiin. Jos se ei ole saatavilla järjestelmässäsi, asenna se suorittamalla seuraava komento:
sudo napsahtaa Asentaa xmlstarlet
Linux-järjestelmäsi “xmlstarletilla” voit tulostaa tiedostosi XML-muodossa seuraavan esimerkin mukaisesti. Tulostuksesi muotoillaan siististi, mikä helpottaa lukemista:
Vaihtoehtoisesti voit käyttää 'xmllint' saavuttaaksesi saman. Aloita asentamalla se järjestelmääsi seuraavalla komennolla:
sudo apt Asentaa libxml2-utils
Asennuksen jälkeen voit tulostaa XML-tiedoston nopeasti seuraavalla syntaksilla:
xmllint --muoto details.xml
XML muotoillaan ja se on helposti luettavissa seuraavan esimerkin mukaisesti:
Oletetaan, että haluat luoda tulosteen muotoillusta XML:stä. Voit ohjata tulosteen uudelleen luomaan uuden XML-tiedoston seuraavan esimerkin mukaisesti. Kun avaat uuden tiedoston, näet, että sinulla on kaunis painettu versio XML:stä:
Johtopäätös
On mahdollista tulostaa XML-tiedostoja Linux Bashissa tai Pythonissa. Pythonilla voit tulostaa XML:n kauniisti sisällyttämällä sen koodiisi tai lukemalla sen ulkoisena tiedostona. Linux Bashissa voit käyttää erilaisia komentorivityökaluja. Tässä viestissä on kuvattu parhaat vaihtoehdot molemmissa tapauksissa. Kokeile niitä!