如何使用jq
将json的值提取为JSON数组?
例如以下json:
{
"a" : 1,
"b" : 2
}
我想将值提取为JSON数组:
[
1,
2
]
如何使用jq
来做到这一点?
我找到了一种仅在docs中提取密钥的方法:
echo $json | jq keys
返回:
[
"a",
"b"
]
答案 0 :(得分:5)
echo $json | jq '[.[]]'
输出:
[
1,
2
]
答案 1 :(得分:3)
一种解决方案是使用to_entries
,然后使用map
仅提取值:
$ echo '{
"a" : 1,
"b" : 2
}' | jq 'to_entries|map(.value)'
[
1,
2
]
另一种更简单,更快捷的解决方案是仅使用map(.)
:
$ echo '{
"a" : 1,
"b" : 2
}' | jq 'map(.)'
[
1,
2
]