gpt4 book ai didi

ansible - 在 Ansible 的字典列表中搜索键

转载 作者:行者123 更新时间:2023-12-01 11:17:46 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Ansible lookup values from complex structure?

(1 个回答)


3年前关闭。




我有一个类似于以下内容的字典列表:

"subnets": [
{
"name": "subnet1-name34554",
"address": "192.168.1.100"
"id: "id1"
},
{
"name": "subnet2-name67678",
"addr": "192.168.1.200"
"id": "id2"
},
{
"name": "subnet3-name23345",
"addr": "192.168.1.300"
"id": "id3"
}
]

我正在尝试使用部分名称搜索字典并返回全名。例如搜索 subnet1应该返回 subnet1-name34554
如果我做这样的事情:
- name: test
debug: msg="{{ subnets | selectattr("name", "search", "subnet1") | list }}"

我得到一个带有单个 dict 的列表:
 [
{
"name": "subnet1-name34554",
"address": "192.168.1.100"
"id: "id1"
}
]

我不确定只提取“名称”键的下一步是什么,或者是否有更好的方法?

最佳答案

结果,您将获得字典列表(单个字典)。

所以把它输入first过滤以仅获取第一个元素,然后获取地址 name属性(property)。

- name: test
debug:
msg: "{{ (subnets | selectattr('name', 'search', 'subnet1') | list | first).name }}"

关于ansible - 在 Ansible 的字典列表中搜索键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48426663/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com