如何将 jq 的输出分配给变量?

问题描述 投票:0回答:1

我正在尝试使用 jq 解析 NOAA NWS json 数据。我的最后一门计算机课是在高中 67-68 学期的高年级。温柔一点。

我已经弄清楚如何过滤我想要的数据,但我希望将其分配给变量,以便我可以在以后使用它。使用原始 json 名称和索引号作为变量的名称是我的目标。我找不到任何给我线索的文档,但我猜这是 jq 一直使用的东西。

这是我的数据和过滤器:https://jqplay.org/s/uRhNX-UglJ?fbclid=IwAR3lPxOj1fQcyzEOSrvf5x3WBQWXd0N1kwTc62Agmg1KANwkKL6hI-0vJOE

json bash variables jq
1个回答
0
投票

所以不确定这是否有帮助,但我使用 JSON prettifier 工具来获取我需要的数组和索引信息 (第一个对我更有帮助)

从那里我编写了一个 bash 脚本,它将我获取的任何数据作为变量,对其进行查询,然后使用 jq 和 awk 打印我想要的任何内容

这是脚本中的一行,显示了我正在查找的数据:

res=$(curl --silent "https://api.oraclize.it/v1/query/eth_mainnet_${rec}/status" | jq -r ".result.checks[0].results")
        echo "$res"|awk '{print $2}'

-r 标志使 jq 输出原始字符串,而不是 JSON 编码。当将输出分配给 Bash 变量时,这很有用。 jq 命令提取结果数组,awk 用于打印该数组的第二个元素。

如果我可以提供任何进一步的信息,请随时与我们联系,但这也许会给您指明正确的方向

© www.soinside.com 2019 - 2024. All rights reserved.