In seltenen Fällen gibt es eine Umgebung, in der jq nicht verwendet werden kann, obwohl [aws-cli] vorhanden ist (https://aws.amazon.com/jp/cli/). Es ist vernünftig darauf hinzuweisen, dass jq enthalten sein sollte, aber es gibt Fälle, in denen dies nicht der Fall ist, daher werde ich jp.py erläutern, das in solchen Fällen verwendet werden kann.
Ich habe aus dem Text von JAWSUG CLI Branch gelernt.
Die Python-Implementierung der Abfragesprache JMESPath für JSON lautet jp.py. JMESPath ist auch in der Abfrageoption aws-cli verfügbar. Ich bin froh, dass jp.py zusammen mit aws-cli installiert ist und mit einem einzigen Befehl ausgeführt werden kann. Sie können sich auch auf Tutorial für JMES Path beziehen. Der Zweck ist der gleiche wie bei jq, aber die Sprache ist anders.
Holen Sie sich die Instanz-ID mit jp.py aus der mit aws-cli erhaltenen Instanzliste.
$ aws --region ap-northeast-1 ec2 describe-instances | jp.py 'Reservations[].Instances[].InstanceId'
[
"i-297dXXXX",
"i-c0e2XXXX",
"i-02965fbeXXXXXXX"
]
jp.py --help Wie Sie sehen können, ist es einfach.
$ 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.
Gugus Fähigkeit ist zu gering. .. .. ..
Das Folgende war sehr hilfreich. Vielen Dank.
[Persönliches Memo] Verwenden wir jmespath für das JSON-Parsing Kann mit aws-cli verwendet werden - Verwenden Sie query = jmespath fest Vier Snippets, die die erweiterten Abfrageoptionen in AWS CLI 1.3 für Python nutzen
Recommended Posts