【发布时间】:2019-02-14 12:13:15
【问题描述】:
对于这个数据 https://jqplay.org/s/onlU9ghjn1
我无法找出正确的语法来做类似的事情
.gcp_price_list | ."CP-COMPUTEENGINE-OS" |
(
if ( .[].cores == "shared" ) then
.[].cores = 0.5
end
)
似乎我需要else 部分,但我不知道该放什么。如果我这样做:
.gcp_price_list | ."CP-COMPUTEENGINE-OS" |
(
if ( .[].cores == "shared" ) then
.[].cores = 0.5
else .[].cores = .[].cores end
)
结果中仍有“共享”,即
"win": {
"low": 0.02,
"high": 0.04,
"cores": "shared",
"percore": true
}
输入被复制到结果中,这不是我想要的。
相关,但我觉得它们不是很有帮助,问题
How do I update a single value in a json document using jq?
我的实际选择是用文本编辑器“全部替换”, 但如果有一个优雅的解决方案,我会在这里留下这个问题。
【问题讨论】:
标签: json if-statement jq