我有一个名为authorized_keys
的文件,需要使用Ansible脚本删除其中的一行。
问题在于,当我尝试删除包含“+”字符的行时,Ansible无法删除该行。
例如,authorized_keys
文件如下:
.....
abhi foo+bar saken
......(EOF)
我想要移除abhi foo+bar saken
这行,但是因为有+
字符,Ansible无法删除这一行。
我可以移除不含+
字符的行。
任务:
- name: Delete keys in sysadmin/.ssh/authoriezd_keys
lineinfile: dest=/home/{{name}}/.ssh/authorized_keys
state=absent
regexp='^{{key}}$'
PS:我正在使用Ansible的lineinfile
模块
lineinfile
通常意味着你最好写一个文件,可以使用copy
或template
。这样可以完全控制文件,而不必担心其内容。 - tedder42