You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ansible新手咨询:Windows服务器基于主机名设变量的语法是否正确?

你的Ansible变量条件设置语法是正确的

你给出的写法完全符合Ansible的Jinja2模板语法规范,能精准实现你的需求:

  • 当inventory_hostname(Ansible内置的清单主机名变量)包含字符'Z'时,my_variable会被赋值为value_if_contains_Z
  • 主机名不含'Z'时,自动使用default_value

如果需要不区分大小写的匹配(比如主机名含小写'z'也触发指定值),可以稍作调整:

vars:
    my_variable: "{{ 'value_if_contains_Z' if 'z' in inventory_hostname.lower() else 'default_value' }}"

你可以用以下简单playbook测试逻辑是否生效:

- name: 测试条件变量配置
  hosts: windows_servers
  vars:
    my_variable: "{{ 'value_if_contains_Z' if 'Z' in inventory_hostname else 'default_value' }}"
  tasks:
    - name: 打印变量值
      ansible.windows.win_debug:
        msg: "主机 {{ inventory_hostname }} 使用的变量值: {{ my_variable }}"

内容的提问来源于stack exchange,提问作者user18610347

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 20:43:11