json - 在连接 JSON 文件时排除空输入
问题描述
我正在寻找使用 jq 连接目录中的多个 JSON 文件。大多数 JSON 文件看起来像这样
[
{
a: 12,
b: 22,
c: []
}
]
因此,为了连接它们,我使用以下 jq 查询
jq -s '[.[]|.[ ]]' *.json > xyz.json
这似乎工作正常,我得到了预期的连接输出,直到它遇到一个 JSON 文件,其中只写了 null,当我尝试将它与其他文件连接时,我得到一个错误。
$ cat test.json
null
$ jq -s '[.[]|.[ ]]' xyz.json test.json > y.json
jq: error (at test.json:0): Cannot iterate over null (null)
有没有办法在通过目录连接时排除这个空 JSON 文件?
我必须提到这些 JSON 文件是作为不同Trivy Image扫描的输出生成的,我无法控制输出是什么。
如果其他人以前遇到过这个问题,请帮助我。
解决方案
推荐阅读
- python - Altair - 显示所有轴刻度,但仅显示一些刻度标签
- sql - 获取每个父节点的最大年龄的直接后代?
- c - 将共享内存与包含数组的结构一起使用
- java - 运行单元测试时不满足的依赖表示错误
- r - NA 中间值 --> 错误的相关性和绘图?
- javascript - 面临问题让用户选择取消静音自动播放 vimeo iframe 嵌入
- rust - 如何将十六进制数字而不是 &[u8] 写入文件
- docker - Docker Swarm - 两个容器之间的通信?
- linux - 如何在链中使用 grep 作为别名
- java - InetSocketAddress的spring数据mongodb序列化