【发布时间】:2017-08-18 03:10:07
【问题描述】:
我有一个如下所示的 JSON 文档。请注意,这是真实 JSON 的简化示例,包含在问题的底部:
{
"some_array": [
{
"k1": "A",
"k2": "XXX"
},
{
"k1": "B",
"k2": "YYY"
}
]
}
我想更改some_array 数组中所有k2 键的值,其中k1 键的值为“B”。
这可以使用 jq 吗?
作为参考,这是实际的 JSON 文档,它是用于postman / newman 工具的环境变量文件。我正在尝试使用 JQ 进行此转换,因为该工具尚不支持 command line overrides of specific environment variables
实际的 JSON
{
"name": "Local-Stack-Env-Config",
"values": [
{
"enabled": true,
"key": "KC_master_host",
"type": "text",
"value": "http://localhost:8087"
},
{
"enabled": true,
"key": "KC_user_guid",
"type": "text",
"value": "11111111-1111-1111-1111-11111111111"
}
],
"timestamp": 1502768145037,
"_postman_variable_scope": "environment",
"_postman_exported_at": "2017-08-15T03:36:41.474Z",
"_postman_exported_using": "Postman/5.1.3"
}
【问题讨论】: