使用jq将json数组转换为jsonl格式

Dav*_*vid 2 json elasticsearch jq jsonlines

我有这样的json:

[ {"one": 1}, {"two": 2}]
Run Code Online (Sandbox Code Playgroud)

并希望将其转换为以下格式:

{"one": 1}
{"two": 2}
Run Code Online (Sandbox Code Playgroud)

以便将其索引到ElasticSearch中。(后一种称为“ jsonl”格式)。JQ是我的首选工具,但是我不知道该怎么做。谢谢

pea*_*eak 7

关键是-c命令行选项,它生成JSONL:

jq -c '.[]' test_array.json
Run Code Online (Sandbox Code Playgroud)


Dav*_*vid -3

弄清楚了:

cat test_array.json |jq '.[]'
Run Code Online (Sandbox Code Playgroud)