使用Ansible删除除一行以外的所有行

使用Ansible删除除一行以外的所有行,ansible,Ansible,因此,我正在使用Ansible playbook,我的想法是删除调试变量中的所有行,但保留一行。比如说, - name: Debug debug: var: json_response 我们考虑JSON1响应有100行。我想找到我的特定词语,并遵守规定。像这样: 在你找到“疯狂”字样的地方排队 output.json: 我在做这个测试 所以你们可以理解 我在说什么 我是一个疯狂的测试 结果output.json将是: 我是一个疯狂的测试 现在,我看了ansible的“lineinf

因此,我正在使用Ansible playbook,我的想法是删除调试变量中的所有行,但保留一行。比如说,

- name: Debug
  debug:
    var: json_response

我们考虑JSON1响应有100行。我想找到我的特定词语,并遵守规定。像这样:

在你找到“疯狂”字样的地方排队

output.json:

我在做这个测试

所以你们可以理解

我在说什么

我是一个疯狂的测试

结果output.json将是:

我是一个疯狂的测试

现在,我看了ansible的“lineinfile”模块,它说: 此模块确保文件中存在特定行,或使用反向引用的正则表达式替换现有行

但它似乎不能满足我的需要,有什么想法吗


谢谢

如果
json\u响应
是正确的json数据,您可以使用
json\u查询
过滤器来搜索关键字:


否则,如果它是一个普通的多行字符串,您可以使用
regex\u search
过滤器:

如果
json\u response
是一个正确的json数据,您可以使用
json\u query
过滤器来搜索关键字:


否则,如果它是一个普通的多行字符串,您可以使用
regex\u search
过滤器:

您的示例看起来不像有效的JSON。您的示例看起来不像有效的JSON。