У меня есть некоторые данные github в формате json, например, так:
{
"id": 18535,
"node_id": "MDExhN0M8877883",
"number": 747,
"state": "closed",
"locked": false,
"title": "Generate cordova protos",
"user": {
"login": "Superhacker"
},
"body": "Simple PR",
"created_at": "2018-05-02T07:43:39Z",
"updated_at": "2018-07-21T02:09:14Z",
"closed_at": "2018-05-02T07:54:56Z",
"merge_commit_sha": "4bf92c0332c66999999b6c0a766e",
"assignee": null,
"assignees": [],
"requested_reviewers": [],
"requested_teams": [],
"labels": [],
"milestone": null,
"draft": false,
"author_association": "CONTRIBUTOR"
}
Я не хочу показывать строки json, когда requested_reviewers
пусто.
Я пробовал несколько способов
echo <the json string above> | jq '.requested_reviewers | select(. != "")
Показывает []
echo <the json string above> | jq '.requested_reviewers | select(! empty)
Произошла синтаксическая ошибка.
echo <the json string above> | jq '.requested_reviewers | select(. != empty)
Теперь jq
не печатает ничего, как я хотел.
Но если я кормлю json непустым requested_reviewers
, это также ничего не печатает.
Кроме того, я не хочу просто распечатывать поле. Я хочу видеть всю строку json.
Как мне достичь своей цели с помощью jq
?