Допустим, у меня есть пара тысяч записей Test Kit в списке данных:
[
{
"id": "abcde1",
"data": {
"type": "COVID19",
"date": "2020-04-15"
}
},
{
"id": "hijkl1",
"data": {
"type": "COVID20",
"date": "2020-04-02"
}
},
{
"id": "asdf1",
"data": {
"type": "COVID19",
"date": "2020-04-16"
}
},
{
"id": "jkl1",
"data": {
"type": "COVID20",
"date": "2020-04-16"
}
}
]
Каждая запись может быть любого "типа". Я хочу отфильтровать по «COVID19» И распечатать «id»:
COVID19 asdf1
COVID19 abcde1
JQ может легко отфильтровать записи, которые «COVID19» для меня:
cat dat.json |jq -r '.[].data |select(.type == "COVID19")'
Но однажды я развернул до .[].data
Я больше не могу ссылаться на .[].id
.
Как мне ссылаться на ключ / значение более высокого уровня после фильтрации результатов? Есть ли ярлык для объекта root, который напоминает абсолютный путь?