user
En bash comment formater un fichier xml ?
alphonsio

Pour formater (ou "beautifier") un fichier XML en utilisant un script Bash, vous pouvez utiliser xmllint :

xmllint --format input.xml -o output.xml

Pour formater un fichier XML en bash (le rendre lisible avec indentation), vous avez plusieurs options. Voici les méthodes les plus courantes :

1. Avec xmllint (libxml2)

C'est l'outil le plus utilisé.

xmllint --format fichier.xml

Pour sauvegarder le résultat dans un nouveau fichier :

xmllint --format fichier.xml -o fichier_formate.xml

2. Avec xmlstarlet

C'est un autre outil très puissant pour manipuler du XML.

xmlstarlet fo input.xml

Pour écrire dans un fichier :

xmlstarlet fo input.xml > output.xml

Si l’un de ces outils n’est pas installé :

Pour installer xmllint :

Il fait partie du paquet libxml2-utils sur Debian/Ubuntu :

sudo apt install libxml2-utils

Pour installer xmlstarlet :

sudo apt install xmlstarlet