使用jq如何将两个JSON文件的对应子数组合并为目标格式
可以通过jq实现该需求,直接使用如下命令即可输出符合要求的合并结果:
jq -n '[inputs] | transpose | map(add)' file1.json file2.json
如果需要直接把结果写入目标文件,在命令末尾追加> desired.json即可。
命令逻辑说明
-n参数用于关闭jq默认的单输入读取逻辑,配合inputs关键字可以批量读取所有指定输入文件的JSON内容[inputs]会将file1、file2的顶层数组打包为一个新的二维数组,结构为[ file1的内容, file2的内容 ]transpose对二维数组按索引位置转置,转置后相同索引位的子数组会被归为一组map(add)遍历转置后的每一组子数组,将组内的数组合并为一个数组,最终得到目标结构
内容的提问来源于stack exchange,提问作者Freddy Roller
相关产品推荐
相关产品推荐

