【发布时间】:2018-09-17 16:44:19
【问题描述】:
这与Update one value in array of dicts, using jq非常相似
我有一个 foo.json,我想将 AAA 更新为 AAA-MY-SUFFIX。 基本上,我想得到当前值(AAA),然后给它加上一个后缀。
[
{
"Key": "Name",
"Value": "awesome"
},
{
"Key": "role",
"Value": "AAA"
}
]
从上一个问题,我可以用这个替换 AAA 的值:
cat foo.json | jq '(.[] | select(.Key == "role") | .Value) |= "-MY_SUFFIX"'
但我想为现有值追加一个后缀,而不是完全替换它。
类似这样的东西(但它当然不起作用):
cat tags.json | jq '(.[] | select(.Key == "role") | .Value) |= .Value + "-MY_SUFFIX"'
我觉得我很接近,但我只能弄清楚:(
【问题讨论】: