0
我有一個由多個JSON-「元素」組成的JSON文件,例如,使用jq處理一個JSON文件中的多個「元素」
{
"name": "Name 1",
"foo": "Bar"
}
{
"id": 123,
"bar": "Foo"
}
我只是在第二個元素感興趣,我需要的元素的「索引」(即我不知道是什麼領域元素將包含)查詢。
如何通過jq
實現此目的?
我有一個由多個JSON-「元素」組成的JSON文件,例如,使用jq處理一個JSON文件中的多個「元素」
{
"name": "Name 1",
"foo": "Bar"
}
{
"id": 123,
"bar": "Foo"
}
我只是在第二個元素感興趣,我需要的元素的「索引」(即我不知道是什麼領域元素將包含)查詢。
如何通過jq
實現此目的?
根據您擁有的jq版本,有幾種可能的答案,所以在這裏我將重點討論一個通用且通用的答案。
使用-s
(「啜食」)選項以獲得第二JSON實體,如jq -s '.[1]'
在JQ 1.4及更高版本,在對象上使用時JQ過濾.[]
保留的順序鍵。 (使用JQ 1.3,你可能是出於運氣,如果你不知道的鍵名什麼。)例如,使用JQ 1.4或更高版本:
$ jq '.[]' {"b":1, "a":2} 1 2
啜食,完美:) – larsmoa