当前位置: 首页 > 面试题库 >

JQ中.key的括号

单于帅
2023-03-14
问题内容

我不明白为什么()要为此工作必须输入密钥:

# kbrandt at glade.local in ~ on git:master x [15:08:19]
$ cat host | jq '. | to_entries | map({ (.key) : .value.CPU.PercentUsed })' | tail
  {
    "rpi-b827eb2d7d23": 10.333333333333334
  },
  {
    "rpi-b827eb8d7c8d": 60
  },
  {
    "rpi-b827eba999fa": 40.733333333333334
  }
]

# kbrandt at glade.local in ~ on git:master x [15:08:54]
$ cat host | jq '. | to_entries | map({ .key : .value.CPU.PercentUsed })' | tail
jq: error: syntax error, unexpected FIELD (Unix shell quoting issues?) at <top-level>, line 1:
. | to_entries | map({ .key : .value.CPU.PercentUsed })
jq: 1 compile error

问题答案:

定义对象文字时,括号指示表达式值应为属性名称。否则,如果您不使用括号,则为文字名称。

因此,这些是定义具有"foo"属性的对象的等效方法:

{ foo: 1 }
{ "foo": 2 }
"foo" as $name | { ($name): 3 }
{ somename: "foo" } | { (.somename): 4 }


 类似资料:
  • 问题内容: 在jq中,如何将JSON转换为字符串? 从: 至: 问题答案: 您可以尝试: 这是一个演示:

  • jq

    jq 是一个轻量级而且灵活的命令行 JSON 解析器,类似用于 JSON 数据的 sed 工具。 jq 类似于sedJSON 数据,可以使用它来进行切片、过滤、映射和转换结构化数据,与使用sed、awk、grep一样。 使用可移植的 C 语言编写,具有零运行时依赖。 如果直接从最新的 git 进行构建,则需要安装 flex、bison(>=3.0)、libtool、make、automake 和

  • 问题内容: 我在input.txt中有一个具有以下值的文本文件 需要jq rexpression通过删除“ \ r”将其转换为以下json格式 output.json } 我试过下面的表达式并得到 并获得以下输出 问题答案: 解: 输出: 警告 此解决方案假定未出现在输入字符串的“值”部分中。

  • Masonry是一 个用来布局的jQuery插件,看了下面这张对比图你就知道它的用途: 配置Masonry相当容易,只需要在jQuery脚本中的wrapping container元素中加上.masonry()方法。   multiple widths: $('#wrapper').masonry({ columnWidth: 200 });   same width $('#wrapper').

  • extgrid 是一款jquery上的gird插件,界面风格采用了类似easyui extjs 界面风格样式,可通过css修改自己想要的样式 extgrid具有列大小,位置改变,排序,分组,分页,工具栏,扩展行,rowNumber,多选列,编辑列,行列锁,ajax远程支持。table转换 。。。 等功能 google code : https://code.google.com/p/jq-extg

  • 本文向大家介绍浅析python 中大括号中括号小括号的区分,包括了浅析python 中大括号中括号小括号的区分的使用技巧和注意事项,需要的朋友参考一下 python语言最常见的括号有三种,分别是:小括号( )、中括号[ ]和大括号也叫做花括号{ }。其作用也各不相同,分别用来代表不同的python基本内置数据类型。 1.python中的小括号( ):代表tuple元组数据类型,元组是一种不可变序列