相关疑难解决方法(0)

如何在变量有句点时使用jq

我正在努力让以下工作,而不是,请帮助我:

curl -s 'https://cryptofresh.com/api/asset/markets?asset=MKR' | jq .OPEN.BTC
Run Code Online (Sandbox Code Playgroud)

有问题的变量包括一个时期,我试图逃避这段时间的所有事情&&也尝试用引号围绕它; 不去; 这是我想要的变量(我在没有任何过滤器的情况下运行jq,并在此处截断输出以显示我需要的内容.提前感谢未来的问题解决者!

curl -s 'https://cryptofresh.com/api/asset/markets?asset=MKR' | jq
....
 "OPEN.BTC": {
"volume24": 0.932166,
"price": 0.09995,
"updated": "2016-05-04T03:03:29.000Z"
},
....
Run Code Online (Sandbox Code Playgroud)

key special-characters jq

11
推荐指数
2
解决办法
4176
查看次数

如何通过 jq 使用特殊字符访问属性?

给定这个 json 文件wtf.json:

{
  "I-am-test-v2": {
    "exist": true
  },
  "works": {
    "exist": true
  }
}
Run Code Online (Sandbox Code Playgroud)

我可以通过以下方式验证它是否具有这些密钥:

$ jq 'keys' wtf.json 
[
  "I-am-test-v2",
  "works"
]
Run Code Online (Sandbox Code Playgroud)

我可以works通过以下方式访问:

$ jq .works wtf.json
{
  "exist": true
}
Run Code Online (Sandbox Code Playgroud)

但我无法选择:

$ jq .I-am-test-v2 wtf.json
Run Code Online (Sandbox Code Playgroud)

因为这会产生错误:

jq: error: am/0 is not defined at <top-level>, line 1:
.I-am-test-v2   
jq: error: test/0 is not defined at <top-level>, line 1:
.I-am-test-v2      
jq: error: v2/0 is not defined at <top-level>, line 1:
.I-am-test-v2           
jq: 3 compile errors …
Run Code Online (Sandbox Code Playgroud)

json jq

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

标签 统计

jq ×2

json ×1

key ×1

special-characters ×1