如何使用 jq 将 JSON 对象流转换为数组
How to convert a JSON object stream into an array with jq
我想使用 jq
将 json 个对象的流放入 json 数组中,例如,来自
{"a":1}
{"b":2}
到
[{"a":1},
{"b":2}]
但这行不通
echo '
{"a":1}
{"b":2}
'|jq '[.]'
自从我得到
[
{
"a": 1
}
]
[
{
"b": 2
}
]
使用 -s
选项大快朵颐。
$ jq -s '.' <<< '{ "a": 1 } { "b": 2 }'
[
{
"a": 1
},
{
"b": 2
}
]
作为另一种选择,使用 inputs
读取值是一种更加灵活的选择。您通常需要将它与 -n
选项结合使用,以防止第一个值被过早消耗。
$ jq -n '[inputs]' <<< '{ "a": 1 } { "b": 2 }'
我想使用 jq
将 json 个对象的流放入 json 数组中,例如,来自
{"a":1}
{"b":2}
到
[{"a":1},
{"b":2}]
但这行不通
echo '
{"a":1}
{"b":2}
'|jq '[.]'
自从我得到
[
{
"a": 1
}
]
[
{
"b": 2
}
]
使用 -s
选项大快朵颐。
$ jq -s '.' <<< '{ "a": 1 } { "b": 2 }'
[
{
"a": 1
},
{
"b": 2
}
]
作为另一种选择,使用 inputs
读取值是一种更加灵活的选择。您通常需要将它与 -n
选项结合使用,以防止第一个值被过早消耗。
$ jq -n '[inputs]' <<< '{ "a": 1 } { "b": 2 }'