XML Pretty Print în Linux Bash și Python

Xml Pretty Print In Linux Bash Si Python



XML este conceput ca un limbaj de marcare care poate fi citit de om, dar numai dacă este destul de formatat. Dacă deschideți un fișier XML, este posibil să nu înțelegeți conținutul, în special pentru un fișier XML mare. Cu toate acestea, puteți imprima un XML pe Bash sau Python pentru a-l face ușor de citit de om. Acest ghid prezintă diferite moduri de a imprima XML în Linux Bash și Python destul.

Cum să imprimați destul de mult XML în Linux Bash și Python

Când lucrați cu Python, este posibil să obțineți un caz în care doriți să imprimați XML. Ar putea fi un fișier XML extern sau codul XML care este inclus în scriptul Python. Pentru Linux Bash, este posibil să doriți să deschideți un fișier XML pe terminalul dvs. pentru a vedea conținutul acestuia. Oricare ar fi cazul, vom vedea diferitele modalități de a imprima XML destul.







1. Pretty Print XML în Python



Înainte de a analiza opțiunile, următorul este fișierul XML cu care vom lucra pentru exemplul nostru:







În Python, puteți lucra cu XML în două moduri principale. Să presupunem că aveți fișierul XML dat ca fișier extern și doriți să-l imprimați destul de. Puteți importa biblioteca „xml.dom.minidom”. Odată importat, puteți utiliza Python open() pentru a citi conținutul fișierului dvs. extern. După aceea, puteți utiliza toprettyxml() pentru a imprima fișierul XML extern destul.

În exemplul următor, folosim fișierul nostru extern „details.xml” și creăm diferite variabile în cod:



Apoi putem rula scriptul nostru Python pe terminal pentru a obține rezultatul destul de formatat, așa cum este ilustrat în figura următoare. Rețineți că utilizarea bibliotecii DOM Python ajută la formatarea corectă a XML-ului, făcându-l ușor de citit de oricine rulează scriptul Python:

Alternativ, dacă aveți doar un fișier XML mic, îl puteți încorpora direct în scriptul dvs. Python. Mai aveți nevoie de biblioteca DOM Python pentru a formata XML-ul intern în scriptul dvs. Funcția care se folosește este aceeași ca și în cazul lucrului cu un fișier XML extern, doar că includem direct XML-ul.

Priviți cum includem XML-ul în următoarea imagine:

Puteți rula apoi scriptul Python așa cum am făcut mai devreme. Veți obține versiunea de tipărire frumoasă a fișierului dvs. XML în rezultatul dvs., așa cum am obținut în următoarea ieșire:

Această opțiune se aplică numai atunci când fișierul XML are câteva rânduri. Pentru un fișier XML mare, luați în considerare deschiderea acestuia ca fișier extern.

2. Pretty Print XML în Bash

Pe terminalul dvs., este posibil să vizualizați conținutul fișierelor, inclusiv XML. De exemplu, puteți folosi comanda „cat” pentru a afișa conținutul fișierului nostru „details.xml”. Cu toate acestea, rezultatul este imposibil de citit din cauza formatării slabe.

Pentru a imprima destul de mult acest fișier XML, există diferite instrumente pe care le puteți utiliza. Aici, vom acoperi două dintre cele comune. În primul rând, puteți utiliza „xmlstarlet” care este instalat pe majoritatea sistemelor Linux. Dacă nu este disponibil pe sistemul dvs., executați următoarea comandă pentru ao instala:

sudo snap instalare xmlstarlet

Cu „xmlstarlet” pe sistemul dumneavoastră Linux, puteți imprima XML destul de mult fișierul, așa cum este ilustrat în exemplul următor. Rezultatele dvs. vor fi formatate frumos, ceea ce va face mai ușor de citit:

Alternativ, puteți folosi „xmllint” pentru a realiza același lucru. Începeți prin a-l instala pe sistemul dvs. cu următoarea comandă:

sudo apt instalare libxml2-utils

Odată instalat, puteți imprima rapid fișierul XML folosind următoarea sintaxă:

xmllint --format detalii.xml

XML-ul dvs. va fi formatat și ușor de citit, așa cum se arată în exemplul următor:

Să presupunem că doriți să creați o ieșire a XML-ului formatat. Puteți redirecționa rezultatul pentru a crea un fișier XML nou, așa cum se arată în exemplul următor. Când deschideți noul fișier, veți vedea că aveți versiunea destul de tipărită a XML:

Concluzie

Este posibil să imprimați destul de mult fișierele XML în Linux Bash sau Python. Cu Python, puteți imprima destul de mult XML-ul încorporându-l în codul dvs. sau citindu-l ca fișier extern. Pentru Linux Bash, puteți utiliza diferite instrumente de linie de comandă. Această postare a detaliat cele mai bune opțiuni de utilizat în ambele cazuri. Încercați-le!