2017-09-14 9 views
0

ここは自分のスクリプトです。私は複数のdestのテキストを置き換えたいです。どのように私は(dest =/home/*/conf/server.xml)でワイルドカードを使うことができますか?正規表現と置換パターンが同じである場合ansible-playbook - 複数の宛先でテキストを置き換える方法

- hosts: 192.168.8.11 
    user: mohitmehral 
    sudo: yes 
    tasks: 
    - replace: 
     dest=/home/5/conf/server.xml 
     #dest=/home/1/conf/server.xml 
     #dest=/home/2/conf/server.xml 
     #dest=/home/3/conf/server.xml 
     #dest=/home/4/conf/server.xml 
     #dest=/home/5/conf/server.xml 
     regexp='pattern="%{X-Forwarded-For}i %h %t %a %p %v %q "%{Referer}i" %m "%U" "%S" "%{User-agent}i" %b %s %D"/>' 
     replace='pattern="%{X-Forwarded-For}i %h %t %a %p %v %q"%{Referer}i" %m "%U" "%{User-agent}i" "%b" "%s" "%D""/>' 
     backup=yes 

答えて

2

、その後、あなたは次のように行うことができます。

- hosts: 192.168.8.11 
    user: mohitmehral 
    sudo: yes 
    tasks: 
    - replace: 
     dest="/home/{{ item }}/conf/server.xml" 
     regexp='pattern="%{X-Forwarded-For}i %h %t %a %p %v %q "%{Referer}i" %m "%U" "%S" "%{User-agent}i" %b %s %D"/>' 
     replace='pattern="%{X-Forwarded-For}i %h %t %a %p %v %q"%{Referer}i" %m "%U" "%{User-agent}i" "%b" "%s" "%D""/>' 
     backup=yes 
    with_items: [1,2,3,4,5] 
関連する問題