cat target.json | jq '.[] | select(.sex | endswith("female")) |@csv'
我尝试了上面的代码以条件输出csv,其中仅列出了女孩。
“ target.json”
[
{
"name": "Mike",
"age": "15",
"sex": "male"
},
{
"name": "Dan",
"age": "10",
"sex": "male"
},
{
"name": "Kasia",
"age": "5",
"sex": "female"
}
]
但是,它无法创建并显示此错误代码。
jq: error (at <stdin>:0): object ({"sex":"...) cannot be csv-formatted, only array
谁能告诉我如何?
jq -r '
.[]
| select(.sex | endswith("female"))
| to_entries
| map(.value)
| @csv
' target.json
to_entries到:
[
{
"key": "name",
"value": "Kasia"
},
{
"key": "age",
"value": "5"
},
{
"key": "sex",
"value": "female"
}
]
然后将(.value)映射到:
[
"Kasia",
"5",
"female"
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句