.htaccess 如何确保行存在并使用Ansible LineinFile取消注释?
如何确保文件中存在特定行,并使用ansible的“lineinfile”取消注释 我要取消注释的行(在.htaccess 如何确保行存在并使用Ansible LineinFile取消注释?,.htaccess,ansible,ansible-playbook,.htaccess,Ansible,Ansible Playbook,如何确保文件中存在特定行,并使用ansible的“lineinfile”取消注释 我要取消注释的行(在.htaccess中): 我使用了以下方法: - name: Make sure PHP Errors are turned on lineinfile: dest={{ www_path }}/.htaccess line="php_flag display_errors on" 实际上,您的示例的工作原理如下: .htaccess文件的内容: #php_flag display
.htaccess
中):
我使用了以下方法:
- name: Make sure PHP Errors are turned on
lineinfile: dest={{ www_path }}/.htaccess line="php_flag display_errors on"
实际上,您的示例的工作原理如下:
.htaccess
文件的内容:
#php_flag display_errors on
ansible戏剧:
- name: Make sure PHP Errors are turned on
lineinfile:
dest: "{{ www_path }}/.htaccess"
line: "php_flag display_errors on"
此剧本的ansible剧本结果:
$ cat .htaccess
#php_flag display_errors on
php_flag display_errors on
如果文件以注释行开头,您将看到第二行未注释。要更正此问题,请使用与现有行匹配的regexp并替换它:
- lineinfile:
dest: /Users/bwhaley/tmp/file
regexp: '^#php_flag display_errors'
line: 'php_flag display_errors'
backrefs: yes
请注意,使用
backrefs:yes
时,如果要取消注释的行尚未出现并已注释,则该播放将不会进行任何更改 为什么不能对整个.htaccess
文件使用配置管理?
- lineinfile:
dest: /Users/bwhaley/tmp/file
regexp: '^#php_flag display_errors'
line: 'php_flag display_errors'
backrefs: yes