问题标签 [jq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1980 浏览

json - 如何从 Ruby 中的 JSON 中获取特定字段

我需要在 Ruby 中实现一个简单的 shell 实用程序,它从文件中解析 JSON 并从中返回一个特定的字段。

要解析的 JSON 示例:

想法是创建一个带有两个参数的 CLI 实用程序:要读取的 JSON 文件和要提取的 JSON 字段:

我正在努力如何将第二个参数映射到 Ruby 中解析的 JSON 数据结构。我可以肯定地编写一个迭代器,使用点作为分隔符将字符串拆分为一个数组,然后逐项遍历它,但这看起来不像是优雅的解决方案。

对更优雅的方式有什么建议吗?

0 投票
4 回答
405107 浏览

json - 使用jq根据对象中变量的值选择对象

我有以下 json 文件:

我正在使用 jq 并希望获取“位置”为“斯德哥尔摩”的对象的“名称”元素。

我知道我可以通过

但是我不知道如何只打印某些对象,给定子键的值(这里:)"location" : "Stockholm"

0 投票
1 回答
7676 浏览

json - 使用 jq 解析 AWS CLI 的 json 输出

我想使用 jq ( http://stedolan.github.io/jq/ ) 解析来自 aws elb describe-load-balancers 的 json 输出,并仅在 AvailabilityZones 包含特定值的情况下返回名称和可用区。

这是表示源输出的部分编辑 json:

只有在为 AvailabilityZones 键指定完整的值列表时,我才能让它工作。

以上工作,但我只想选择它是否包含“us-east-1b”的值,而不考虑其他值。

0 投票
3 回答
4029 浏览

json - Select nth element from multidimensional JSON array with jq

How can I use jq to transform this array of arrays:

Into an array that contains the first (0) element from every subarray? Meaning to produce output like this:

I was thinking to use reduce xx as $item (...) but I didnt manage to come up with anything useful.

0 投票
3 回答
9162 浏览

json - 使用 jq 列出 JSON 对象中的键

我有一个由科学仪器创建的分层深度 JSON 对象,因此该文件有点大(1.3MB)并且不容易被人们阅读。我想获取 JSON 对象的键列表,直到一定深度。例如,给定一个像这样的输入对象

我想要这样的输出。

这主要是为了能够枚举 JSON 对象中的内容。从仪器处理 JSON 对象后开始发散:例如,有些可能有一个字段,例如.frame.cross_section.stats.fwhm,而另一些可能有.sample.species,因此能够在命令行上查询 JSON 对象会很方便。

0 投票
1 回答
710 浏览

json - 使用 jq 在 cli 上解析 Json

假设我有以下 json 对象:

我想在不输入的情况下获取值 foo'.a.b.c.foo'

我意识到我可以做到…… echo '{ "a":{"b":{"c":{ "foo":1}}},"d":{"e":{"bar":2}}}' | jq '.[][][].foo'但是 jq 中有递归的狂野吗?喜欢 **?我确定jq不支持*,有没有办法让jq支持jsonpath?或者甚至可能只是另一个支持 json 路径的 cli 工具?

0 投票
6 回答
136404 浏览

json - 如何使用 jq 合并来自 2 个文件的 2 个 JSON 对象?

我在 shell 脚本中使用jq工具(jq-json-processor)来解析 json。

我有 2 个 json 文件,想将它们合并到一个唯一的文件中

这里是文件的内容:

文件 1

文件2

预期结果

我尝试了很多组合,但我得到的唯一结果是以下,这不是预期的结果:

使用此命令:

0 投票
1 回答
93871 浏览

json - jq 条件输出

我正在使用jq来玩 json。我想知道如何有条件地打印一些东西。

假设我对现场通话感兴趣geo。我使用了以下命令,发现只有一个条目geonull

如何只打印该条目而不打印其他所有内容?

在手册中没有看到类似print命令的内容。这不起作用:cat all.json | jq 'if .place == null then . end'. jq抱怨语法错误。

0 投票
1 回答
2310 浏览

json - 使用 jq 解析 json

我正在尝试在 linux 命令行上使用 jq 从 JSON 结构中获取难度值:

(JSON 保存在一个名为 status.txt 的文件中 - 如下所示)但我可能会不断尝试:

回来了,有人能告诉我我做错了什么吗?

0 投票
5 回答
43317 浏览

json - 如何将对象映射到数组以便可以将其转换为 csv?

我正在尝试转换一个看起来像这样的对象:

对于看起来像这样的 csv:

我更喜欢使用命令行工具jq但似乎无法弄清楚如何进行分配。我设法拿到了钥匙,jq '. | keys' test.json但不知道下一步该做什么。

问题是您不能将 ak:v 这样的对象直接转换为带有@csv. 它需要是一个数组,所以我们需要先转换为一个数组。如果键被命名,它会很简单,但它们是动态的,所以它不是那么容易。