每次匹配后插入ansible lineinfile

时间:2015-05-24 02:18:44

标签: ansible

我想使用ansible lineinfile模块(或类似的东西)在特定正则表达式的每个匹配之后插入一行。 (lineinfile只会在最后一场比赛后插入。)

这看起来很简单。我发誓我先尝试了google-fu。

1 个答案:

答案 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(){}
      };