我想用来jq将json对象流放入json数组中,例如,从
jq
{"a":1} {"b":2}
至
[{"a":1}, {"b":2}]
但这行不通
echo ' {"a":1} {"b":2} '|jq '[.]'
自从我得到
[ { "a": 1 } ] [ { "b": 2 } ]
用该-s选项将其混为一谈。
-s
$ jq -s '.' <<< '{ "a": 1 } { "b": 2 }' [ { "a": 1 }, { "b": 2 } ]
作为另一种选择,使用读取值inputs是更灵活的选择。通常,您需要将此-n选项与选项结合使用,以防止第一个值过早消耗。
inputs
-n
$ jq -n '[inputs]' <<< '{ "a": 1 } { "b": 2 }'