XML Pretty Print i Linux Bash og Python

Xml Pretty Print I Linux Bash Og Python



XML er designet som et merkespråk som kan leses av mennesker, men bare hvis det er ganske formatert. Hvis du åpner en XML-fil, kan du ikke forstå innholdet, spesielt for en stor XML-fil. Du kan imidlertid skrive ut en XML på Bash eller Python for å gjøre den lett lesbar for mennesker. Denne guiden presenterer de forskjellige måtene å skrive ut XML i Linux Bash og Python pretty.

Hvordan skrive ut XML i Linux Bash og Python

Når du arbeider med Python, kan du få et tilfelle der du ønsker å skrive ut XML. Det kan være en ekstern XML-fil eller XML-koden som er inkludert i Python-skriptet. For Linux Bash vil du kanskje åpne en XML-fil på terminalen din for å se innholdet. Uansett vil vi se de forskjellige måtene å skrive ut XML pen på.







1. Pretty Print XML i Python



Før vi graver inn på alternativene, er følgende XML-filen som vi skal jobbe med for eksempelet vårt:







I Python kan du jobbe med XML på to hovedmåter. Anta at du har den gitte XML-filen som en ekstern fil, og du vil skrive den ut pen. Du kan importere «xml.dom.minidom»-biblioteket. Når den er importert, kan du bruke Python open() for å lese innholdet i den eksterne filen. Etter det kan du bruke toprettyxml() til å skrive ut den eksterne XML-filen din pen.

I følgende eksempel bruker vi vår eksterne 'details.xml'-fil og lager forskjellige variabler i koden:



Vi kan deretter kjøre Python-skriptet vårt på terminalen for å få den ganske formaterte utgangen som illustrert i følgende figur. Legg merke til hvordan bruk av DOM Python-biblioteket hjelper til med å formatere XML-en pent, slik at den lett kan leses av alle som kjører Python-skriptet:

Alternativt, hvis du bare har en liten XML-fil, kan du inkludere den direkte i Python-skriptet ditt. Du trenger fortsatt DOM Python-biblioteket for å formatere den interne XML-en i skriptet ditt. Funksjonen som brukes er den samme som ved arbeid med en ekstern XML-fil, bare at vi inkluderer XML direkte.

Se på hvordan vi inkluderer XML i følgende bilde:

Du kan deretter kjøre Python-skriptet ditt som vi gjorde tidligere. Du vil få den vakre utskriftsversjonen av XML-filen din i utdataene dine som det vi fikk i følgende utdata:

Dette alternativet gjelder bare når XML-filen din har noen få linjer. For en stor XML-fil bør du vurdere å åpne den som en ekstern fil.

2. Pretty Print XML i Bash

På terminalen din er det mulig å se innholdet i filer inkludert XML. Du kan for eksempel bruke «cat»-kommandoen for å vise innholdet i «details.xml»-filen vår. Utdataene er imidlertid uleselige på grunn av dårlig formatering.

For å skrive ut denne XML-filen på en fin måte, er det forskjellige verktøy du kan bruke. Her skal vi dekke to av de vanlige. Først kan du bruke 'xmlstarlet' som kommer installert på de fleste Linux-systemer. Hvis det ikke er tilgjengelig på systemet ditt, kjør følgende kommando for å installere det:

sudo snapp installere xmlstarlet

Med 'xmlstarlet' på Linux-systemet kan du XML ganske skrive ut filen som illustrert i følgende eksempel. Utdataene dine vil være pent formatert som gjør det lettere å lese:

Alternativt kan du bruke 'xmllint' for å oppnå det samme. Start med å installere den på systemet ditt med følgende kommando:

sudo apt installere libxml2-utils

Når den er installert, kan du raskt skrive ut XML-filen ved å bruke følgende syntaks:

xmllint --format details.xml

XML-en din vil være formatert og lett lesbar som vist i følgende eksempel:

Anta at du vil lage en utdata av den formaterte XML-en. Du kan omdirigere utdataene for å lage en ny XML-fil som vist i følgende eksempel. Når du åpner den nye filen, vil du se at du har den pene trykte versjonen av XML:

Konklusjon

Det er mulig å skrive ut XML-filene i Linux Bash eller Python. Med Python kan du ganske skrive ut XML ved å inkorporere den i koden din eller lese den som en ekstern fil. For Linux Bash kan du bruke forskjellige kommandolinjeverktøy. Dette innlegget har detaljert de beste alternativene å bruke i begge tilfeller. Prøv dem!