Я пытаюсь разобрать JSON, который является выходом API-интерфейса Philips Hue.Bash Parse JSON Objects jsawk
Я нашел инструмент jsawk, но каким-то образом я не могу получить доступ к данным внутри объекта JSON.
Команда:
... | jsawk 'return this.f709f9c0b-on-0.name'
работает, но, к сожалению, у меня нет идентификатор каждого объекта (например, f709f9c0b-на-0). Есть ли способ получить доступ к объекту, не зная идентификатор, а затем узнать этот идентификатор. Я пытался использовать «*» или «Итерации» объектов, но ничего не работало.
Заранее спасибо
Выход выглядит следующим образом:
{
"f709f9c0b-on-0": {
"name": "Badezimmer on 0",
"lights": [
"4"
],
"owner": "3e281978544fb15b42bc0e3a3f4ce3",
"recycle": true,
"locked": false,
"appdata": {},
"picture": "",
"lastupdated": "2016-02-17T17:20:06",
"version": 1
},
"69d313be0-on-0": {
"name": "Klavier on 0",
"lights": [
"1"
],
"owner": "3e281978544fb15b42bc0e3a3f4ce3",
"recycle": true,
"locked": false,
"appdata": {},
"picture": "",
"lastupdated": "2016-02-17T17:31:05",
"version": 1
},
...
}
Спасибо или ответ. На самом деле работает точечная нотация. Моя проблема ist, что у меня нет идентификатора. Мне нужна переменная для «f709f9c0b-on-0». Идентификатор генерируется случайным образом, поэтому я не могу воспроизвести это. Мне нужно что-то, что итерации через все объекты JSON. Это возможно? – Marcel
Возможно, вам понадобится использовать что-то вроде 'forEach (this.keys(), ...)' –