У меня есть ниже JSON в качестве ввода:
[
{
"ENVIRONMENT": [
"sit"
],
"Usage": [],
"id": "i-098a99bd2bd0ac86b",
"Name": [
"instance1"
]
},
{
"ENVIRONMENT": [
"uat"
],
"Usage": [
"testing"
],
"id": "i-0b210876db6d028f3",
"Name": [
"instance2"
]
}
]
Я могу использовать jq '.[] | [.id, .ENVIRONMENT[], .Usage[], .Name[]]'
, чтобы получить следующее:
[
"i-098a99bd2bd0ac86b",
"sit",
"instance1"
]
[
"i-0b210876db6d028f3",
"uat",
"testing",
"instance2"
]
Или я мог бы использовать jq '.[] | {id: .id, env: .ENVIRONMENT[], usage: .Usage[], name: .Name[]}'
для получения следующего (он возвращает только один из экземпляров):
{
"id": "i-0b210876db6d028f3",
"env": "uat",
"usage": "testing",
"name": "instance2"
}
Есть ли способ получить форматирование второго метода, но вернуть все экземпляры, которые дает мне первый метод? Я полагаю, что для тега, который не существует ни в одном из экземпляров, использование будет пустым или пустым.