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服务后再尝试运行