shell
1json='[{"item_id":1,"name":"123"},{"item_id":2,"name":"234"},{"item_id":3,"name":"345"}]' 2echo $json | jq '.[] | select(.name | contains("34"))'
このように実行すると、
{ "item_id": 2, "name": "234" } { "item_id": 3, "name": "345" }
と結果が返ってきますが、このうちの1つ目のデータ、つまり
{ "item_id": 2, "name": "234" }
だけを取得したいと考えています。
shell
1json='[{"item_id":1,"name":"123"},{"item_id":2,"name":"234"},{"item_id":3,"name":"345"}]' 2echo \$json | jq '.[] | select(.name | contains("34")) | .[0]'
としてもselectで[ ]外れているためエラーになってしまいます。
selectの後に手動で[ ]をつけるなども出来ると思いますが、スマートでは無いと思います。
どのようにすればスマートに取得出来るでしょうか?

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/20 16:00
2022/05/20 16:03
2022/05/20 16:27