【发布时间】:2020-10-30 01:52:29
【问题描述】:
假设我有以下 JSON:
{
"id": "Ab12",
"details": "{\"timeValue\":null,\"lastModifiedIn\":\"PHX\"}",
"version": 3
}
我想在不使用 jq 命令的情况下提取“lastModifiedIn”键的值。 基本上,我寻求的结果是“PHX”。
有没有办法使用基本的 shell 脚本来提取它?
【问题讨论】:
-
为什么
details是string("{\"lastModifiedIn\":\"PHX\"}") 而不是object({ "lastModifiedIn" : "PHX"})?这使得解析它比必要的更难。你能以某种方式影响这些数据的生成器吗? -
json 实际上是从数据库调用中检索到的,它将 json 存储为单纯的字符串。我刚刚检索到它,现在我想提取值
-
我对脚本不太熟悉,但通过谷歌搜索我意识到我可能必须使用 grep 或 sed 来提取该值。但是,我不太确定该怎么做
-
如果你走那条路,每次你从这个数据库中提取一些东西时,你都必须处理它。与数据库人员交谈。问他们如何正确提取json对象
-
确实如此。但是,这更像是一个修补程序,需要从开发者端解决。