XML Pretty Print sa Linux Bash at Python

Xml Pretty Print Sa Linux Bash At Python



Ang XML ay idinisenyo bilang isang markup language na nababasa ng tao, ngunit kung ito ay medyo naka-format. Kung magbubukas ka ng XML file, maaaring mabigo kang maunawaan ang nilalaman, lalo na para sa isang malaking XML file. Gayunpaman, maaari kang mag-print ng XML sa Bash o Python upang gawin itong madaling mabasa ng tao. Ang gabay na ito ay nagpapakita ng iba't ibang paraan upang mag-print ng XML sa Linux Bash at Python pretty.

Paano Mag-Pretty Print XML sa Linux Bash at Python

Kapag nagtatrabaho sa Python, maaari kang makakuha ng isang kaso kung saan nais mong mag-print ng XML. Maaaring ito ay isang panlabas na XML file o ang XML code na kasama sa script ng Python. Para sa Linux Bash, maaaring gusto mong magbukas ng XML file sa iyong terminal upang tingnan ang mga nilalaman nito. Anuman ang kaso, makikita natin ang iba't ibang paraan upang mai-print ang XML na maganda.







1. Medyo Print XML sa Python



Bago kami maghukay sa mga opsyon, ang sumusunod ay ang XML file na gagawin namin para sa aming halimbawa:







Sa Python, maaari kang magtrabaho kasama ang XML sa dalawang pangunahing paraan. Ipagpalagay na mayroon kang ibinigay na XML file bilang isang panlabas na file at gusto mong i-print ito nang maganda. Maaari mong i-import ang 'xml.dom.minidom' library. Kapag na-import, maaari mong gamitin ang Python open() upang basahin ang mga nilalaman ng iyong panlabas na file. Pagkatapos nito, maaari mong gamitin ang toprettyxml() upang i-print ang iyong panlabas na XML file na maganda.

Sa sumusunod na halimbawa, ginagamit namin ang aming panlabas na 'details.xml' na file at lumikha ng iba't ibang mga variable sa code:



Pagkatapos ay maaari naming patakbuhin ang aming Python script sa terminal upang makuha ang medyo na-format na output tulad ng inilalarawan sa sumusunod na figure. Pansinin kung paano nakakatulong ang paggamit ng library ng DOM Python sa maayos na pag-format ng XML, na ginagawa itong madaling mabasa ng sinumang nagpapatakbo ng script ng Python:

Bilang kahalili, kung mayroon ka lamang isang maliit na XML file, maaari mo itong isama nang direkta sa iyong script ng Python. Kailangan mo pa rin ang DOM Python library para ma-format ang internal XML sa iyong script. Ang function na ginagamit ay kapareho ng sa kaso ng pagtatrabaho sa isang panlabas na XML file, tanging isama namin ang XML nang direkta.

Tingnan kung paano namin isinama ang XML sa sumusunod na larawan:

Maaari mong patakbuhin ang iyong script ng Python tulad ng ginawa namin kanina. Makukuha mo ang magandang bersyon ng pag-print ng iyong XML file sa iyong output gaya ng nakuha namin sa aming sumusunod na output:

Nalalapat lang ang opsyong ito kapag may ilang linya ang iyong XML file. Para sa isang malaking XML file, isaalang-alang ang pagbukas nito bilang isang panlabas na file.

2. Medyo Print XML sa Bash

Sa iyong terminal, posibleng tingnan ang mga nilalaman ng mga file kasama ang XML. Halimbawa, maaari mong gamitin ang command na 'cat' upang ipakita ang mga nilalaman ng aming 'details.xml' na file. Gayunpaman, hindi nababasa ang output dahil sa hindi magandang pag-format.

Para maganda ang pag-print ng XML file na ito, may iba't ibang tool na magagamit mo. Dito, tatalakayin natin ang dalawa sa mga karaniwan. Una, maaari mong gamitin ang 'xmlstarlet' na naka-install sa karamihan ng mga sistema ng Linux. Kung hindi ito available sa iyong system, patakbuhin ang sumusunod na command upang i-install ito:

sudo snap i-install xmlstarlet

Gamit ang 'xmlstarlet' sa iyong Linux system, maaari mong i-print ng XML ang iyong file gaya ng inilalarawan sa sumusunod na halimbawa. Ang iyong output ay maayos na mai-format na ginagawang mas madaling basahin:

Bilang kahalili, maaari mong gamitin ang 'xmllint' upang makamit ang pareho. Magsimula sa pamamagitan ng pag-install nito sa iyong system gamit ang sumusunod na command:

sudo apt i-install libxml2-utils

Kapag na-install na, mabilis mong mai-print ang iyong XML file gamit ang sumusunod na syntax:

xmlint --format details.xml

Ipo-format at madaling mabasa ang iyong XML gaya ng ipinapakita sa sumusunod na halimbawa:

Ipagpalagay na gusto mong lumikha ng isang output ng na-format na XML. Maaari mong i-redirect ang output upang lumikha ng bagong XML file tulad ng ipinapakita sa sumusunod na halimbawa. Kapag binuksan mo ang bagong file, makikita mo na mayroon kang magandang naka-print na bersyon ng XML:

Konklusyon

Posibleng medyo i-print ang mga XML file sa Linux Bash o Python. Sa Python, maaari mong mai-print ang XML sa pamamagitan ng pagsasama nito sa iyong code o pagbabasa nito bilang isang panlabas na file. Para sa Linux Bash, maaari kang gumamit ng iba't ibang tool sa command line. Ang post na ito ay nakadetalye ng mga pinakamahusay na opsyon na magagamit sa alinmang kaso. Subukan ang mga ito!