JSON dans les scripts Bash avec Ticktick 1

JSON dans les scripts Bash avec Ticktick

Je vais vous présenter l’ami du WGET par excellence. Imaginez le contexte suivant : sur Amazon AWS, vous avez besoin de récupérer une information en interrogeant “l’hyperviseur” des machines EC2. Les résultats sont retournés en JSON (comme beaucoup d’API web).

Avec du java, du perl, du python ou tout autre langage évolué c’est facile d’aller chercher les bonnes infos. Mais à quoi bon sortir la grosse artillerie alors que vous ne voulez faire qu’une commande ? Un script bash pourrait suffire mais parser une chaine de caractères (et surtout du json) va vous refroidir.

Un développeur a mis au point un petit outil pour bash qui permet de parser du json automatiquement

https://github.com/kristopolous/TickTick

 

Attention, pour les structures complexes de Json ça ne marchera pas. Mais ça peut rendre de grands services.

Tout le principe repose sur des “doubles back-quotes” ce qui rend le truc très lisible et efficace.

#!/bin/bash
. ../ticktick.sh

# File
DATA=`cat data.json`
# cURL
#DATA=`curl http://foobar3000.com/echo/request.json`

tickParse "$DATA"

echo ``pathname``
echo ``headers["user-agent"]``

Un petit outil à garder sous la main.

A propos Mathieu Passenaud

Passionné de technologies Web, diplômé d'informatique embarquée et actuellement dans le développement d'applications en Cloud Computing.

Je vous propose également...

Maintenir son site web perso : une plaie ! 2

Maintenir son site web perso : une plaie !

Un blog, un compte Twitter, un compte viadeo, un compte LikeDin, un compte Google+, un …

[Offre d'emploi] Ingénieur développement à Grenoble 3

[Offre d’emploi] Ingénieur développement à Grenoble

Le réseau “pole de compétences logiciels libres du CNDP” d’Olivier nous a transféré cette demande …

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.