我想根据JSON流的键来过滤它。以下是公共JSON文件:https://s3.amazonaws.com/okta-ip-ranges/ip_ranges.json我正试图与之争论。当我对密钥jq 'keys'
进行过滤时,我得到以下输出
[
"apac_cell_1",
"emea_cell_1",
"emea_cell_2",
"preview_cell_1",
"preview_cell_2",
"preview_cell_3",
"us_cell_1",
"us_cell_10",
"us_cell_11",
"us_cell_12",
"us_cell_2",
"us_cell_3",
"us_cell_4",
"us_cell_5",
"us_cell_6",
"us_cell_7"
]
我正试图获得与以"0"开头的密钥相关联的所有CCD_ 2;us_ cell_;我还没有找到一种方法。大多数过滤似乎都集中在值上,而不是键上。
您可以使用以下内容:
to_entries | map(select(.key | startswith("us_cell_")) | .value.ip_ranges) | add
在这里试试。
CCD_ 3将根对象映射到具有与原始对象的字段相对应的key
和value
字段的对象阵列中。
我们对其进行过滤以仅保留那些具有以"0"开头的关键字的关键字;"us_cell_";,进一步映射它以只保留ip范围,并最终将这些数组合并在一起。