【发布时间】:2020-09-18 10:46:51
【问题描述】:
我正在尝试使用 jq 在 json 文件中添加新字段:
jq -r --arg k "foo" --arg v "bar" '.newField += {$k:$v}' myfile
但结果是:
jq: error: syntax error, unexpected ':', expecting '}' (Unix shell quoting issues?) at <top-level>, line 1:
.newField += {$k:$v}
jq: error: May need parentheses around object key expression at <top-level>, line 1:
.newField += {$k:$v}
jq: 2 compile errors
当我像下面这样删除关键变量时,它工作正常:
jq -r --arg k "foo" --arg v "bar" '.newField += {"static_key":$v}' myfile
知道如何使用 jq arg 中的键名吗?
【问题讨论】: