Ansible之任务控制(循环条件)

1. 编写循环和条件任务

1.1 简单循环

1.不用循环

2.使用循环

 

3.将变量放入列表

1.2 循环散列或字典列表

1.3 register和loop一起使用

 

条件任务语法

关键字:when

使用布尔值测试 ,只有当变量为true时,才会执行

 when条件为false时会跳过

条件

等于(字符串) A== "B"
等于(数字) A==100
小于 <
大于 >
小于等于 <=
大于等于 >=
不等于 !=
变量存在 xxx is defined
变量不存在 xxx is not defined
布尔值true 1、true、yes
布尔值false 0、false、no
第一个变量的值存在,且在第二个变量的列表中 A in B

多条件

or 两个条件一个为真即可
and 两个条件必须都为真

 

 

注: when 支持使用列表描述条件 ,也可以使用 and or

 

组合循环和有条件任务

例1:

 

例2:

当vsftpd运行时,重启httpd

 在server1停止vsftpd服务后再尝试运行