背景
我有一个包含一个对象中的一串JSON字符串的JSON文件:
{
"requestType": "POST",
"response": {
"size": 78,
"text": "{\"recordID\":123, \"title\":\"Hello World\", \"content\":\"Lorem ipsum...\"}"
}
}
我需要使用json命令行解释器jq将.response.text
字符串的内容解释为json格式。
当我运行这个命令时:
jq '.response.text | @json'
输出:"\"{\\\"recordID\\\":123, \\\"title\\\":\\\"Hello World\\\", \\\"content\\\":\\\"Lorem ipsum...\\\"}\""
我得到了一些奇怪的转义json字符串,而不是可以通过像这样的方式访问的json:.response.text | @json | .recordID
。
我意识到@json
函数将获取json并输出一个经过转义的json字符串,所以必须有另一种方法,但是 @text
似乎没有用。
问题
是否有一种方法将转义后的json字符串转换为实际的json,以便我可以使用类似于此命令进行解析: jq '.response.text | @json | .title'
并获得此输出:"Hello World"
?