小编Sim*_*ite的帖子

对 jq 解析器感到困惑

我正在尝试在我的 bash 脚本中使用jq 解析器,但我对它的工作方式感到困惑,有人可以解释一下我做错了什么吗?

这是来自外部服务的原始文件,我需要从中获取value

root@test ~ # cat test.json 
{"sensors":[{"id":34585,"value":-3.06,"time":1457031003}]}
Run Code Online (Sandbox Code Playgroud)

尝试将其发送至jq

root@test ~ # cat narod.json | jq
{
  "sensors": [
    {
      "id": 34585,
      "value": -3.06,
      "time": 1457031003
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

试图获得sensors

root@test ~ # cat narod.json | jq '.sensors'
[
  {
    "id": 34585,
    "value": -3.06,
    "time": 1457031003
  }
]
Run Code Online (Sandbox Code Playgroud)

试图valuesensors

root@test ~ # cat narod.json | jq '.sensors.value'
jq: error (at <stdin>:0): Cannot index array with …
Run Code Online (Sandbox Code Playgroud)

bash bash-scripting

4
推荐指数
1
解决办法
7370
查看次数

标签 统计

bash ×1

bash-scripting ×1