我想使用ansible lineinfile
模块(或类似的东西)在特定正则表达式的每个匹配之后插入一行。 (lineinfile
只会在最后一场比赛后插入。)
这看起来很简单。我发誓我先尝试了google-fu。
答案 0 :(得分:3)
这是一个使用Ansible的vars:
find_this: "Row in the file"
insert_this: "New line to be inserted"
filename: "path/to/foo_file.txt"
tasks:
- name: multiline match and insert
replace: >
dest={{ filename }}
regexp="^({{ find_this }}\n)(?!{{ insert_this }})"
replace="\1{{ insert_this }}\n"
模块和前瞻性正则表达式来确保幂等性的解决方案。
class ABC {
protected:
X1& _x1;
X2& _x2;
Logger& _logger;
ABC(X1& x1, X2& x2, Logger& l):_x1(x1), _x2(x2),_logger(l) {}
ABC(X1& x1, Logger& l):_x1(x1),_logger(l) {} //getting error uninitialized reference member ‘ABC::_x2’
~ABC(){this->clear();}
void clear(){}
};