【发布时间】:2016-04-05 06:32:16
【问题描述】:
我在一个文件中有以下内容(我将其称为“myfile”):
[{
"id": 123,
"name": "John",
"aux": [{
"abc": "random",
"def": "I want this"
}],
"blah": 23.11
}]
我可以在没有[ 和] 的情况下解析它,如下所示:
$ cat myfile | jq -r '.aux[] | .def'
I want this
$
但是使用[ 和] 我得到:
$ cat myfile | jq -r '.aux[] | .def'
jq: error: Cannot index array with string
如何使用 jq 处理 [ 和 ]? (我确信我可以用不同的工具解析它们,但我想学习 jq 的正确用法。
【问题讨论】:
-
我多次重读这个问题以了解这个想法,然后意识到它的提问方式非常糟糕。故事本身基本上存在逻辑错误。徐旺说:“我可以不用
解析它”,然后立即使用那个东西!有没有搞错?那么第一种情况和第二种情况有什么区别呢?你能解决这个问题吗?还请验证代码突出显示。出于某种原因,这两部分的突出显示方式不同,因此很难看出代码是相同的。 -
我试图自己编辑它,但只是得到:“建议的编辑队列已满”,不管是什么意思。