在Ansible中,可以使用{{}}在字符串中引用变量。但是,当需要将变量与括号连接起来时,可能会出现解释不当的情况,从而导致任务失败。例如,假设需要在任务中将变量与括号连接起来来生成一个命令:
- name: Run command with variable and brackets
shell: "{{ command }} {{ variable }}[1]"
在这个任务中,如果变量的值为“example”,则生成的命令将变为“command example[1]”,而不是“command example[1]”。
为了避免这个问题,可以使用括号表示法,在表达式中使用括号:
- name: Run command with variable and brackets
shell: "{{ command }} {{ variable }}\[1\]"
注意,在表达式中使用反斜杠(\)来转义括号,以确保它们被正确识别。这样,任务将正确地生成所需的命令,而不会出现解释错误。