私は次のようなJSON入力があります。jqを使用してJSONオブジェクトの配列をフィルタリングする方法は?
{
"zk_kafka": [
{
"InstanceType": "t2.medium",
"zkMemory": "16",
"kafkaMemory": "8"
},
{
"InstanceType": "t2.small",
"zkMemory": "8",
"kafkaMemory": "4"
}
],
"es_hdfs": [
{
"InstanceType": "t2.medium",
"esMemory": "16",
"hdfsMemory": "8"
},
{
"InstanceType": "t2.small",
"esMemory": "8",
"hdfsMemory": "4"
}
]
}
まず私は、プロパティ名でアレイを選択します。そして、配列のオブジェクトをInstanceType
の値で選択したいと思います。
jq .zk_kafka
しかし、私はしてオブジェクトの配列をフィルタリングする方法がわからない:私は配列を選択する方法を知っている
{
"InstanceType": "t2.medium",
"zkMemory": "16",
"kafkaMemory": "8"
}
:プロパティzk_kafka
と値t2.medium
ため
例プロパティ値。
jq '.zk_kafka | .[] | select(.InstanceType == "t2.medium")'
がクエリーに引数を渡す--arg
オプションを使用します。
「XY」の問題ではなく、入力と期待される出力を表示します – Inian
今回私はあなたに質問を書いたが、次回はhttps://stackoverflow.com/help/mcveを読んでください – ceving