使用jq根据对象中的键值从数组返回整个对象

赫达

我有一个.json文件,如果该对象中的键值等于'failed',我想通过jq过滤以返回数组中的整个对象。我该怎么做?

示例json:

"version": "0.26.0",
"controls": [{
    "id": "os-1.0",
    "status": "passed",
    "code_desc": "File /etc/profile content should match /umask\\s*022/",
    "profile_id": "test"
}, {
    "id": "os-1.0",
    "status": "passed",
    "code_desc": "File /etc/bashrc content should match /umask\\s*022/",
    "profile_id": "test"
}, {
    "id": "os-1.0",
    "status": "failed",
    "code_desc": "File /etc/csh.cshrc content should match /umask\\s*022/",
    "profile_id": "test"
   "message": "\nexpected: \"/sbin/sulogin\"\n     got: \n\n(compared using `cmp` matcher)\n"
}]

输出到一个新文件:

{
    "id": "os-1.0",
    "status": "failed",
    "code_desc": "File /etc/csh.cshrc content should match /umask\\s*022/",
    "profile_id": "test"
    "message": "\nexpected: \"/sbin/sulogin\"\n     got: \n\n(compared using  `cmp` matcher)\n"
}
顶峰

显示为JSON的文本无效为JSON。假设它具有结构固定{"version": _, "controls": _},则以下过滤器将产生如下所示的结果:

.controls[] | select(.status == "failed")

输出:

{
  "id": "os-1.0",
  "status": "failed",
  "code_desc": "File /etc/csh.cshrc content should match /umask\\s*022/",
  "profile_id": "test",
  "message": "\nexpected: \"/sbin/sulogin\"\n     got: \n\n(compared using `cmp` matcher)\n"
}

注意:为了提高鲁棒性,您可能要使用.status?而不是.status

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用JSON的jq为数组中的每个元素在对象中输出特定的键值

来自分类Dev

根据Typescript中的参数返回具有键值对的对象

来自分类Dev

JavaScript根据键值数组从列表中删除对象

来自分类Dev

根据匹配的数据返回数组中的对象

来自分类Dev

附加到jq中嵌套元素的数组,但返回根对象

来自分类Dev

使用JQ解析对象的JSON数组,使用select匹配对象元素中的指定键值,然后转换为CSV

来自分类Dev

使用javascript将键值从对象数组中剥离

来自分类Dev

使用javascript将键值从对象数组中剥离

来自分类Dev

使用 nodejs 在对象数组中查找特定键值

来自分类Dev

使用 JavaScript 对象数组中的键值总和进行分组

来自分类Dev

对象数组,如果对象中的任何键值对重复,我想返回true

来自分类Dev

尝试获取对象数组中对象内对象的键值的长度

来自分类Dev

NSArray从键值获取整个对象

来自分类Dev

jQuery 返回键值 [对象对象]

来自分类Dev

Ruby根据属性在数组中查找和返回对象

来自分类Dev

在对象数组中查找属性的最大值并返回整个对象

来自分类Dev

根据数组从对象返回值数组

来自分类Dev

如何使用javascript执行对象的相同键值的加法并从对象数组返回唯一对象?

来自分类Dev

计算对象数组中的特定键值

来自分类Dev

从对象的JSON数组中获取键值对

来自分类Dev

迭代对象数组和JS中的键值

来自分类Dev

在数组中添加对象的键值对

来自分类Dev

将对象键值与数组中的值匹配

来自分类Dev

在对象数组中获取键值的值

来自分类Dev

jq将对象键值映射到包含两个对象的对象数组

来自分类Dev

如何使用php从对象获取数组键值

来自分类Dev

使用所需键值列表过滤对象数组

来自分类Dev

要使用数组值更新的对象键值

来自分类Dev

Underscore.js,根据键值删除对象数组中的重复项

Related 相关文章

  1. 1

    使用JSON的jq为数组中的每个元素在对象中输出特定的键值

  2. 2

    根据Typescript中的参数返回具有键值对的对象

  3. 3

    JavaScript根据键值数组从列表中删除对象

  4. 4

    根据匹配的数据返回数组中的对象

  5. 5

    附加到jq中嵌套元素的数组,但返回根对象

  6. 6

    使用JQ解析对象的JSON数组,使用select匹配对象元素中的指定键值,然后转换为CSV

  7. 7

    使用javascript将键值从对象数组中剥离

  8. 8

    使用javascript将键值从对象数组中剥离

  9. 9

    使用 nodejs 在对象数组中查找特定键值

  10. 10

    使用 JavaScript 对象数组中的键值总和进行分组

  11. 11

    对象数组,如果对象中的任何键值对重复,我想返回true

  12. 12

    尝试获取对象数组中对象内对象的键值的长度

  13. 13

    NSArray从键值获取整个对象

  14. 14

    jQuery 返回键值 [对象对象]

  15. 15

    Ruby根据属性在数组中查找和返回对象

  16. 16

    在对象数组中查找属性的最大值并返回整个对象

  17. 17

    根据数组从对象返回值数组

  18. 18

    如何使用javascript执行对象的相同键值的加法并从对象数组返回唯一对象?

  19. 19

    计算对象数组中的特定键值

  20. 20

    从对象的JSON数组中获取键值对

  21. 21

    迭代对象数组和JS中的键值

  22. 22

    在数组中添加对象的键值对

  23. 23

    将对象键值与数组中的值匹配

  24. 24

    在对象数组中获取键值的值

  25. 25

    jq将对象键值映射到包含两个对象的对象数组

  26. 26

    如何使用php从对象获取数组键值

  27. 27

    使用所需键值列表过滤对象数组

  28. 28

    要使用数组值更新的对象键值

  29. 29

    Underscore.js,根据键值删除对象数组中的重复项

热门标签

归档