【发布时间】:2018-07-26 18:41:18
【问题描述】:
我需要支持所有变量以将更改推送到 JSON
changeField=.one.aaa
changeValue=new-val
这行得通:
jq --arg changeValue $changeValue ".one.aaa = \"$changeValue\"" some.json
这不是:
jq --arg changeField $changeField --arg changeValue $changeValue "$changeField = \"$changeValue\"" some.json
我已经尝试了所有[{( Google 向我展示的组合,但没有任何效果。我在这里错过了什么?
【问题讨论】:
-
您的 JSON 实际上是什么样的?是带有
{".one.aaa": "old-value"}的字典吗?还是{"one": {"aaa": "old-value"}}?这是一个minimal reproducible example 有帮助的地方,而不是依靠人们对您的数据做出假设。