Ansible常用模块用法 command和shell 模块

1.###调用command模块,切入/data 下创建abc.txt文件

ansible webservers  -m command -a 'chdir=/data touch abc.txt'
ansible webservers -a 'chdir=/data touch 123.txt'

 

 ###因为comand是默认模块,因此也可不用 -m 来调用command。

 

 

通过ansible提供的命令查询执行结果👇

ansible webservers -a 'ls /data'

 

2.###  creates 可对文件进行条件判断 如果存在则不执行后面的操作

ansible webservers -a 'creates=/data/123.txt rm -f /data/123.txt'  

 

 

 

 

 

3.###总结:官方不推荐使用command模块因为不具备幂等性<因为此模块单次执行结果与多次执行结果并不一致并且很多特殊字符不识别>,而shell模块支持特殊字符、变量、管道符等等但也不具备幂等性因此这两个模块能不用则不用。

 

 

 

 

 

 

 

 

 

 

 

 




posted on 2021-05-29 16:32  1251618589  阅读(2)  评论(0编辑  收藏  举报

导航