У меня есть серия JSON файлов, содержащих массив записей, например,
$ cat f1.json
{
"records": [
{"a": 1},
{"a": 3}
]
}
$ cat f2.json
{
"records": [
{"a": 2}
]
}
Я хочу 1) извлечь одно поле из каждой записи и 2) вывести один массив, содержащий все значения полей из всех входных файлов.
Первая часть проста:
jq '.records | map(.a)' f?.json
[
1,
3
]
[
2
]
Но я не могу понять, как получить jq
для объединения этих выходных массивов в один массив!
Я не женат на jq
; Я с удовольствием воспользуюсь другим инструментом, если это необходимо. Но мне бы очень хотелось узнать, как это сделать с jq
, потому что это то, что я пытался выяснить в течение лет .