【发布时间】:2021-01-06 07:07:09
【问题描述】:
我想在每次发现 *{My-Dept$1} 之后在 file.yaml 中添加行“*{My-Dept$2}”,我能够找到以 *{My-Dept 开头的行$1} 并且只插入了一次,就以这个麻烦告终。
我在文件的多行中有这个,并想在“*{My-Dept$1}”之后插入。
参考如下:
Infrastructure:
- *{My-Dept$0}
- *{My-Dept$1}
Applications:
- *{My-Dept$1}
- *{My-Dept$3}
- *{My-Dept$4}
Database:
- *{My-Dept$0}
- *{My-Dept$1}
- *{My-Dept$3}
使用下面的代码,我只能在最后一个“Database arry”条目之后添加“- *{My-Dept$2}”行。
- name: Add missing Dept
lineinfile:
dest: ./file.yaml
insertafter: '[*{]My-Dept[$]1[}]' #
line: ' - *{My-Dept$2}'
和输出:
Infrastructure:
- *{My-Dept$0}
- *{My-Dept$1}
Applications:
- *{My-Dept$1}
- *{My-Dept$3}
- *{My-Dept$4}
Database:
- *{My-Dept$0}
- *{My-Dept$1}
- *{My-Dept$2}
- *{My-Dept$3}
我希望在 *{My-Dept$1} 条目的每个结果的每个下一行都得到“*{My-Dept$2}”。大多数搜索 find 都在谈论替换,但我的要求是在每个结果中插入多次。
【问题讨论】:
标签: ansible insert ansible-2.x insert-update regexp-substr