[Ansible]lineinfile单行替换修改


官网
在被管理的节点上用正则对目标文件的一行内容修改删除
在一个文件中匹配的多行统一处理 参考replace
文件中多行处理blockinline

  • path 目标文件路径
  • state absent删除
  • regexp 正则匹配 最后一行被替换
  • line 要在文件中插入替换的行
  • create 文件不存在是,是否要创建文件内容 yes | no
[root@ceph3 tmp]# cat a.repo
......
[epel-source] 
name=Extra Packages for Enterprise Linux 7 - $basearch - Source ← 替换
#baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1
add  ← 删除掉

- 删除匹配行
ansible webservers -m lineinfile -a "path=/tmp/a.repo regexp='^add' state=absent"

- 替换某一行
ansible webservers -m lineinfile -a "path=/tmp/a.repo regexp='^name=Extra' line='EXTRA'"

[epel-source]
EXTRA
#baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
gpgcheck=1

END


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM