gpt4 book ai didi

json - Bash 解析 JSON 对象 jsawk

转载 作者:行者123 更新时间:2023-11-29 09:32:46 25 4
gpt4 key购买 nike

我正在尝试解析一些 JSON,这是 Philips Hue API 的输出。

我找到了工具 jsawk,但不知为何我无法访问 JSON 对象中的数据。

命令:

... | jsawk 'return this.f709f9c0b-on-0.name'

有效,但遗憾的是我没有每个对象的 ID(例如 f709f9c0b-on-0)。有没有办法在不知道 ID 的情况下访问对象,然后找出该 ID。我尝试使用对象的“*”或迭代,但没有任何效果。

提前致谢

输出如下所示:

{
"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
},
...
}

最佳答案

由于连字符,

f709f9c0b-on-0 不是有效标识符,因此您不能使用点表示法。这可能有效(未经测试)

... | jsawk 'return this["f709f9c0b-on-0"].name'

我没有jsawk,但是可以这样做:

... | jq '.["f709f9c0b-on-0"].name'

关于json - Bash 解析 JSON 对象 jsawk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35612182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com