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.