将JSON数据格式化为一行

我有一些要求:

  1. 每个json数据点必须在一行上
  2. 每个json数据点必须由换行符分隔
  3. 此外,如果可能的话,每个数据点都必须用{“ index”:{}}语句
  4. 分隔

我大约有1000个json数据点。这是三个示例的示例:

{
  "str field": "some string","int field": 12345,"bool field": True
}{
  "str field": "another string","int field": 42,"bool field": False
}{
  "str field": "random string","int field": 3856452,"bool field": True
}

但是我需要它看起来像这样:

{"index":{}}
{"str field": "some string","bool field": True}
{"index":{}}
{"str field": "another string","bool field": False}
{"index":{}}
{"str field": "random string","bool field": True}

当前,我正在使用http://jsonviewer.stack.hu/和notepad ++来完成此操作,但是它并不总是能够正常工作,并且难以处理更大的数据集。我宁愿使用第三方网站,而是使用VS Code或IntelliJ之类的IDE来完成相同的工作。

如果您对Elasticsearch熟悉,那么我实际上是在格式化数据以进行批量索引操作。

谢谢

lulu2008137 回答:将JSON数据格式化为一行

您可以使用jq

$ echo "{\"foo\": \"bar\"}" | jq -c . 
{"foo":"bar"}

-c用于紧凑型

本文链接:https://www.f2er.com/3092723.html

大家都在问