所以我試圖用jq取出一些JSON。如何混合出jq的json級別
下面是一個例子:
{
"limit":10,
"offset":20,
"values": [
{
"id": "abcd"
"type": "file"
"users": {
"total": 2,
"profiles": [
{
"first_name": "John",
"last_name": "Smith"
},
{
"first_name": "Sue",
"last_name": "Johnson"
}
]
}
},
{
"id": "efgh"
"type": "folder"
"users": {
"total": 1,
"profiles": [
{
"first_name": "Steve",
"last_name": "Gold"
}
]
}
},
]
}
我很想得到我的結果
limit:10
offset:20
id:abcd, type:file, [users.total:2, users.profiles.first_name: [John, Sue], users.profiles.last_name: [Smith, Johnson]],
id:efgh, type:folder, [users.total:1, users.profiles.first_name: [Steve], users.profiles.last_name: [Gold]],
下面我知道我能管這JQ,但我不知道怎麼辦。我可以很容易地獲得數組中的東西,但我似乎無法弄清楚如何去做,並添加到頂級元素中。所以這是'極限'和'抵消',這讓我很滿意。
我能得到的東西
jq ".values[] | .users.total, .users[].first_name, .users[].last_name"
但我似乎無法弄清楚如何在限制添加和偏移。
您在JSON中缺少一堆逗號。 – Barmar
你使用哪個版本的'jq'?我的1.5.1由於缺少和額外的逗號而無法解析這個JSON,並且在解決這個問題之後,它以「無法用字符串索引號」first_name「」 –
應該是'.users.profiles []。first_name' – Barmar