linux - 仅当变量包含特定字符串时才运行 Ansible 任务

我有多个任务取决于 variable1 的值。我想检查该值是否在 {{ variable1 }} 中,但出现错误:

- name: do something when the value in variable1
  command: <command>
  when: "'value' in {{ variable1 }}"

我正在使用 ansible 2.0.2

最佳答案

如果 variable1 是一个字符串,并且您正在其中搜索一个子字符串,这应该可以工作:

when: '"value" in variable1'

如果 variable1 是一个数组或字典,则 in 将搜索 exact 字符串作为其项目之一。

https://stackoverflow.com/questions/36496911/

相关文章:

linux - 如何将 ISO8859-15 转换为 UTF8?

linux - 如何从目录复制内容而不是符号链接(symbolic link)?

linux - 如何获取unix数据文件中每行的前n个字符

python - 比较两个图像的 python/linux 方式

linux - 如何从 Bash 中的字符串中删除所有非数字字符?

linux - 在 Linux 中的特定行向文件添加文本

regex - 在 Linux 中,名称与正则表达式匹配的文件的磁盘使用情况?

linux - 如何获取自上次使用 bash 修改文件以来的时间(以秒为单位)?

linux - 无法覆盖符号链接(symbolic link) RedHat Linux

linux - yum 可以告诉我哪些存储库提供了特定的包吗?