在Ansible中,使用条件语句的即时命令可以通过使用when
关键字来实现。when
关键字后面跟着一个条件表达式,当这个条件表达式为真时,Ansible会执行这个任务。
以下是一个使用条件语句的即时命令的示例:
- name: Run a command if a condition is met
hosts: all
tasks:
- name: Check if a file exists
stat:
path: /path/to/file
register: file_stat
- name: Run a command if file exists
command: echo "File exists"
when: file_stat.stat.exists
在上面的示例中,首先使用stat
模块检查文件是否存在,并将结果保存在file_stat
变量中。然后,在第二个任务中,使用command
模块运行一个命令,只有当文件存在时,这个命令才会被执行。
注意,在条件表达式中,使用了file_stat.stat.exists
来判断文件是否存在。这个表达式会返回一个布尔值,当文件存在时为真,否则为假。
可以根据具体的条件表达式来定义其他的条件语句,以满足不同的需求。