私はこれを見つけましたQ&Aオブジェクトのすべてのキーを印刷するソリューションを使用します。
jq -r 'keys[] as $k | "\($k), \(.[$k] | .ip)"'
私の場合は、子オブジェクトに対して上記の操作を実行したいと思います。
jq -r '.connections keys[] as $k | "\($k), \(.[$k] | .ip)"'
これを行う正しい構文は何ですか?
ベストアンサー1
keys
パイプを通して実行してみてください。
サンプルinput.json
:
{
"connections": {
"host1": { "ip": "10.1.2.3" },
"host2": { "ip": "10.1.2.2" },
"host3": { "ip": "10.1.18.1" }
}
}
jq -r '.connections | keys[] as $k | "\($k), \(.[$k] | .ip)"' input.json
出力:
host1, 10.1.2.3
host2, 10.1.2.2
host3, 10.1.18.1