2016-10-19 24 views
1

我想添加一些行到目錄中的多個.conf文件/etc/abc/xabc/將多行添加到目錄中的多個文件使用理智

兩條線我想補充低於:

Composite=1 
Extension=1 

我想這些線含有[protocol]線後出現。

我該怎麼做?

我不知道如何繼續這一個;看到我的努力之下 - 儘管我知道這是錯誤的:

- name: add line 

- lineinfile: 
    dest: "{{ item }}" 
    regexp: "{{ item.regexp }}" 
    line: "{{ item.line }}" 
    insertafter: [Protocol] 
    with_items: xxxxxx 

我想我也必須登記(/etc/abc/xabc/)目錄的輸出?

回答

2

首先,它看起來像要編輯的ini文件,所以模塊是更合適:

- ini_file: 
    dest: /path/to/destination/file.ini 
    section: Protocol 
    option: "{{ item.option }}" 
    value: "{{ item.value }}" 
    with_items: 
    - { option: Composite, value: 1 } 
    - { option: Extension, value: 1 } 

其次,它看起來像你想使用一個嵌套循環。爲了清楚起見,我會在外部循環中包含一個文件到目標目錄的fileglob上,並在包含的文件中進行配置。例如,inner_loop.yml

- ini_file: 
    dest: "{{ destination_file }}" 
    section: Protocol 
    option: "{{ item.option }}" 
    value: "{{ item.value }}" 
    with_items: 
    - { option: Composite, value: 1 } 
    - { option: Extension, value: 1 } 

和外:

- include: inner_loop.yml 
    with_fileglob: 
    - /etc/abc/xabc/* 
    loop_control: 
    loop_var: destination_file 

This answer提出了在具有循環超過水珠項結合環的另一種可能的解決方案。

相關問題