Bash:
Travailler avec JSON
Comment faire :
Bash lui-même manque de capacités intégrées d’analyse JSON, mais jq
est un processeur JSON en ligne de commande puissant qui comble cette lacune. Voici comment l’utiliser :
Lire un fichier JSON :
Exemple de data.json
:
{
"name": "Jane Doe",
"email": "[email protected]",
"location": {
"city": "New York",
"country": "USA"
}
}
Pour lire et extraire le nom du fichier JSON :
jq '.name' data.json
Sortie :
"Jane Doe"
Modifier les données JSON :
Pour mettre à jour la ville en “Los Angeles” et écrire à nouveau dans le fichier :
jq '.location.city = "Los Angeles"' data.json > temp.json && mv temp.json data.json
Analyser JSON à partir d’une variable :
Si vous avez du JSON dans une variable Bash, jq
peut également le traiter :
json_string='{"name": "John Doe", "email": "[email protected]"}'
echo $json_string | jq '.name'
Sortie :
"John Doe"
Travailler avec des tableaux :
Étant donné un tableau d’éléments en JSON :
{
"items": ["apple", "banana", "cherry"]
}
Pour extraire le deuxième élément (l’indexation commence à 0) :
jq '.items[1]' data.json
Sortie :
"banana"
Pour des opérations plus complexes et des filtrages, jq
dispose d’un manuel complet et de tutoriels disponibles en ligne, en faisant un outil polyvalent pour tous vos besoins en Bash/JSON.