我有一个像这样的 YAML 文件
---
apps_membership:
children:
apps_prometheus:
children:
group_1:
group_2:
apps_logstash:
children:
group_3:
group_4:
apps_alertmanager:
children:
group_1:
group_2:
我在寻找 vm 时尝试获取组,例如,我正在寻找我想要获取的group_1
apps_prometheus
apps_alertmanager
我正在尝试将kislyuk/yq和 jq 与 map / key / contains结合使用
----- 使用路径命令测试
如果我使用命令
yq -r '.apps_membership.children | paths'
,我会得到这个结果:
[
"apps_prometheus"
]
[
"apps_prometheus",
"children"
]
[
"apps_logstash"
]
[
"apps_logstash",
"children"
]
[
"apps_alertmanager"
]
[
"apps_alertmanager",
"children"
]
如果我用
apps_alertmanager:
children:
group_1: ""
group_2: ""
我得到了想要的输出:
[
"apps_alertmanager"
]
[
"apps_alertmanager",
"children"
]
[
"apps_alertmanager",
"children",
"group_1"
]
[
"apps_alertmanager",
"children",
"group_2"
]
我如何使用命令路径来获取空值?