如何在jq中使用查询结果作为属性值完成字段映射替换?
解决方案
可以通过jq实现,操作方法如下:
1. 转换命令
直接执行以下jq命令即可完成映射替换:
jq ' # 内置类型映射表 { "radiogroup": "radio", "checkbox": "checkbox", "dropdown": "select", "text": "text", "rating": "rate", "boolean": "switch", "comment": "textarea" } as $map # 替换type字段,无匹配时保留原值 | .type = $map[.type] // .type '
2. 实际效果测试
输入样例:
{ "type": "dropdown" }
执行命令后输出结果:
{ "type": "select" }
额外说明
- 该命令支持批量处理多个JSON结构,可直接对接管道输入或者文件输入
- 遇到映射表中不存在的type值会自动保留原始值,不会抛出错误
内容的提问来源于stack exchange,提问作者echo
相关产品推荐
相关产品推荐

