ansible模块lineinfile

示列:

sshd_set.yaml

---
- hosts: test
  remote_user: root
  tasks:
  - name: sshd password forbiddened and reload
    lineinfile: dest=/etc/ssh/sshd_config backrefs=yes regexp='^PasswordAuthentication yes' line='PasswordAuthentication no'
    notify:
    - reload sshd
  handlers:
    - name: reload sshd
      service: name=sshd state=reloaded

 

说明:

ansible-doc lineinfile

替换 移除文件的单行 #多行替换 移除参考replace模块

 

backrefs(default=no)

与state=present一起使用  

前插'insertbefore',后插'insertafter'失效

如果匹配到 替换最后一个匹配结果

如果未匹配到 不做任何改变

 

line

需要声明 state=present 

插入或替换的字符串

 

regexp 

使用正则匹配

 

state(default=present)

present 如果匹配到就替换(最后一个匹配结果) #如果未设置backrefs=yes 未匹配到也会在最后插入line

absent 移除匹配行(所有匹配到的)

你可能感兴趣的:(ansible模块lineinfile)