转换json文件

时间:2015-04-12 14:06:31

标签: json linux jq

我有一个如下所示的json文件:

[   
    {"foo": 42, "bar": "less interesting data"},
    {"foo": 50, "bar": "big data"}
]

我想使用jq将其内容转换为以下内容:

[   
    {"name": 42, "value": "less interesting data"},
    {"name": 50, "value": "big data"}
]

我尝试了命令:

jq ' .[] | {name:.foo, value:.bar}',

但{...}部分之间没有逗号:

{   
  "name": 42, 
  "value": "less interesting data"
}   
{   
  "name": 50, 
  "value": "big data"
}

有人能帮助我吗?

2 个答案:

答案 0 :(得分:1)

您正在寻找的是:

jq '[.[] | {name:.foo, value:.bar}]'

答案 1 :(得分:1)

改为使用map

map({ name: .foo, value: .bar })