jq无法使用带破折号和数字的标记名称

jq无法使用带破折号和数字的标记名称,第1张

jq无法使用带破折号和数字的标记名称

您需要用方括号和双引号引起来:

jq '."component-status"'

使用您给定的输入,它返回:

[  {    "status": "OK",    "component": "Service1",    "status-pre": 200  },  {    "status": "OK",    "component": "Service2",    "status-pre": 200  }]

该JQ手册(开发) - >基本过滤器:

.foo, .foo.bar

最简单的有用过滤器是

.foo
。当给定JSON对象(又名字典或哈希)作为输入时,它将在键“ foo”处产生值;如果不存在,则返回null。

如果键包含特殊字符,则需要使用双引号将其引起来,例如:

."foo$"

从github问题中,如果字段名称带有破折号,则无法选择字段:

目前,该解析为减法。当密钥不符合标识符语法时,您始终可以显式使用字符串。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5630037.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存