gpt4 book ai didi

json - JQ 中的括号用于 .key

转载 作者:行者123 更新时间:2023-12-04 23:18:34 25 4
gpt4 key购买 nike

我不明白为什么 key 必须在 () 中为了这个工作:

# 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" 定义对象的等效方法。属性(property):

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

关于json - JQ 中的括号用于 .key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33700997/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com