[PYTHON] Peut être utilisé lorsque aws-cli est disponible mais que jq n'est pas disponible jp.py

introduction

Dans de rares cas, il existe un environnement dans lequel jq ne peut pas être utilisé même s'il existe aws-cli. Il est raisonnable de souligner que jq devrait être inclus, mais il y a des cas où ce n'est pas le cas, donc je vais expliquer jp.py qui peut être utilisé dans de tels cas.

J'ai appris du texte de JAWSUG CLI Branch.

À propos de JMESPath et jp.py

L'implémentation python du langage de requête JMESPath pour JSON est jp.py. JMESPath est également disponible dans l'option de requête aws-cli. Je suis heureux que jp.py soit installé avec aws-cli et puisse être exécuté avec une seule commande. Vous pouvez également vous référer au Tutoriel pour le chemin JMES. Le but est le même que jq, mais le langage est différent.

Comment utiliser

Obtenez l'ID d'instance avec jp.py à partir de la liste d'instances obtenue avec aws-cli.

$ aws --region ap-northeast-1 ec2 describe-instances |  jp.py 'Reservations[].Instances[].InstanceId'
[
    "i-297dXXXX",
    "i-c0e2XXXX",
    "i-02965fbeXXXXXXX"
]

jp.py --help Comme vous pouvez le voir, c'est simple.

$ jp.py --help
usage: jp.py [-h] [-f FILENAME] [--ast] expression

positional arguments:
  expression

optional arguments:
  -h, --help            show this help message and exit
  -f FILENAME, --filename FILENAME
                        The filename containing the input data. If a filename
                        is not given then data is read from stdin.
  --ast                 Pretty print the AST, do not search the data.

Mauvais points de jp.py

La capacité de Gugu est trop faible. .. .. ..

référence

Ce qui suit a été très utile. Merci beaucoup.

[Mémo personnel] Utilisons jmespath pour l'analyse JSON Peut être utilisé avec aws-cli - Utilisez étroitement query = jmespath Quatre extraits qui tirent parti des options de requête améliorées dans AWS CLI 1.3 pour Python

Recommended Posts

Peut être utilisé lorsque aws-cli est disponible mais que jq n'est pas disponible jp.py
python Remarque: lorsque easy_install ne peut pas être utilisé
Si "ne peut pas être utilisé lors de la création d'un objet PIE" apparaît dans make
pd.tseries.offsets.DateOffset peut être assez lent s'il n'est pas utilisé avec prudence
[Python] Les arguments de longueur variable peuvent être utilisés lors de la décompression des éléments itérables
Scripts pouvant être utilisés lors de l'utilisation de Bottle en Python
Lorsque j'essaye d'utiliser pip, le module SSL n'est pas disponible.