在Ansible中,可以使用循环来迭代字典。以下是一个示例解决方法:
假设我们有以下字典变量:
my_dict:
key1: value1
key2: value2
key3: value3
我们可以使用with_dict
循环来迭代字典中的键值对:
- name: 迭代字典
debug:
msg: "Key: {{ item.key }}, Value: {{ item.value }}"
with_dict: "{{ my_dict }}"
输出会打印每个键值对的键和值:
ok: [localhost] => (item={'key': 'key1', 'value': 'value1'}) => {
"msg": "Key: key1, Value: value1"
}
ok: [localhost] => (item={'key': 'key2', 'value': 'value2'}) => {
"msg": "Key: key2, Value: value2"
}
ok: [localhost] => (item={'key': 'key3', 'value': 'value3'}) => {
"msg": "Key: key3, Value: value3"
}
我们还可以使用with_dict
循环来仅迭代字典的键:
- name: 迭代字典键
debug:
msg: "Key: {{ item }}"
with_dict: "{{ my_dict }}"
loop_control:
loop_var: item
输出会打印每个键的值:
ok: [localhost] => (item=key1) => {
"msg": "Key: key1"
}
ok: [localhost] => (item=key2) => {
"msg": "Key: key2"
}
ok: [localhost] => (item=key3) => {
"msg": "Key: key3"
}
上述示例演示了如何迭代字典的键值对和键。你可以根据自己的需求使用这些示例代码。