Ansible如何在host_var文件中拼接独立条目与已有列表变量
在Ansible的host_vars变量文件中,原生YAML语法不支持你第一种尝试的直接追加列表的写法,你可以用临时变量分段定义的方式实现接近的效果,可读性和扩展性都更好:
# 首先单独定义你要新增的条目,后续加item5这类新内容直接改这部分即可 _list2_extra: - "item3" - "item4" - "item5" # 合并得到最终的list2 list2: "{{ _list2_extra + list1 }}"
这种写法里以_开头的_list2_extra属于约定俗成的内部临时变量,不会和其他公共变量冲突,你后续新增列表条目只需要在_list2_extra下逐行添加就行,和你最初想要的写法体验基本一致。
补充说明:你之前贴的可运行写法疑似笔误,list2: "{{ ['item3', 'item4'] + list2 }}"会造成变量递归引用,正确的应该是拼接list1而非list2本身。
内容的提问来源于stack exchange,提问作者Matthias
相关产品推荐
相关产品推荐

