【发布时间】:2021-10-20 16:13:59
【问题描述】:
我从终端运行的命令返回以下内容:
{
"attributes": {
"env": "prod"
},
"created_by": "email@email.com",
"id": "612",
"state": "published",
"version": "0.22.0"
}
{
"attributes": {
"env": "prod"
},
"created_by": "email@email.com",
"id": "611",
"state": "published",
"version": "0.22.0"
}
我只想从第一个对象中获取“版本”。有办法做到这一点吗?我尝试使用 Array 的所有操作都返回错误...
【问题讨论】:
-
请用所需的输出更新问题。您的 json 中有两个“版本”字段,您只需要第一个版本: {"version":"0.22.0"} ?或者你想要:
[{"version":"0.22.0"}, {"version":"0.22.0"}] -
你得到什么错误?是不是因为这不是有效的 JSON,也不是有效的 JSON 对象流? JSON 不允许尾随逗号,就像您在
"env": "prod",}中看到的那样,如果这是您问题的重点,请说出来。 -
您好,@Joaquin,感谢您的耐心等待!我想要 {"version":"0.22.0"},但似乎 Peak 的答案返回了我需要的值!
-
你好,@Weeble!当我尝试使用 [0] 获取第一个值时,它曾经返回类似“jq: error (at
:19): Cannot index string with number”之类的东西。逗号的大小写是我写例子时的错误,对不起!