繁体   English   中英

如何使用 jq 在 json 中的数组中 select 多个值

[英]How to select multiple values in an array in json using jq

示例 json 我正在使用 jq 使用以下命令从 JSON 文件中获取多个响应。

.components| to_entries[]| "\(.key)- \(.value.status)"

这给了我下面

服务器 2-UP

服务器 1 - 已启动

Splunk-UP

Datameer - UP

平台 - UP

磁盘空间-好

但是我想 select 只尝试了几个我尝试给 to_entries[] 大括号但它没有用。

预期 output:

服务器 1 - 已启动

Splunk-UP

平台 - UP

有没有办法只选择几个值。 感谢你的帮助。 谢谢你。

使用 -r 命令行选项,以下将给定输入转换为所需的 output,并且可能接近您正在寻找的内容:

.components
| to_entries[]
| select(.key == ("server1", "Splunk", "Platfora"))
| "\(.key)- \(.value.status)"

如果组件列表以 JSON 列表的形式提供,那么您可以相应地修改选择标准,例如使用IN (大写)或index

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM