2015-04-12 100 views
2

我有一個JSON文件象下面這樣:轉換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" 
} 

有人可以幫助我嗎?

回答

1

使用map來代替。

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

你所尋找的是:

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

謝謝!:)我正在使用一種解決方法: 'jq'。[] | {name:.foo,value:.bar}'| jq -s「。」' – Beebird