【问题标题】:How can I process oneline json files using `jq`如何使用`jq`处理单行json文件
【发布时间】:2019-08-31 03:45:23
【问题描述】:

我有一个与此类似的单行 json 文件

{"fieldA":1, "fieldB":"foo"}
{"fieldA":2, "fieldB":"bar"}
{"fieldA":4, "fieldB":"foobar"}
...

如何使用jq 正确读取此文件?

我试过了:

cat myFile.json | jq [.]

但这会返回类似:

[{
  "fieldA":1, 
  "fieldB":"foo"
}]
[{
  "fieldA":2, 
  "fieldB":"bar"
}]
[{
  "fieldA":4, 
  "fieldB":"foobar"
}]
...

但我想收到这个:

[{
  "fieldA":1, 
  "fieldB":"foo"
},
{
  "fieldA":2, 
  "fieldB":"bar"
},
{
  "fieldA":4, 
  "fieldB":"foobar"
},
...]

提前致谢!

【问题讨论】:

标签: json command-line jq data-processing


【解决方案1】:

确定你想要那个吗?你的最终目标是什么?您可以使用jq -n '[inputs]' 将所有输入合并到一个数组中(-n 避免了通常将标准输入读入.,允许它全部出现在inputs 上),但这意味着它不能产生任何输出,或做任何进一步的处理,直到整个输入被读取,这可能是也可能不是你想要的。

【讨论】:

  • [在读取整个输入之前,它不能产生任何输出,或做任何进一步的处理] 使用inputs. 时是这样吗?
猜你喜欢
  • 1970-01-01
  • 2020-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-11
  • 1970-01-01
  • 1970-01-01
  • 2017-09-14
相关资源
最近更新 更多