例如 我要对一个配置文件修改后发送给三台主机
第一台主机的配置文件更改处为第一台主机的ip的某一段
第二台主机的配置文件在第一台主机的配置文件之上再加上自身ip的某一段
第三台主机依次类推
在shell脚本中只需把三个ip写到同一个文件中,然后在while循环中读取ip,再根据awk命令截取ip设置变量后,根据sed命令利用变量的值修改配置文件,再分别拷到对应主机上即可。
而ansible工具好像要使用3个模板和许多的变量才能实现,每次修改ip后都需要手动修改定义的变量的值(shell脚本中只需改一个ip即可,因为很多变量的值都用ip加上awk命令实现了)
总的给我的感觉就是ansible的变量写的有点死,写完后是什么就是什么。而shell中变量可根据其他变量的值使用awk等命令进行操作,这样只需改变一个变量的值其他变量的值会自动改变。