jq:错误:无法添加数字和字符串

2024-06-18

我想从下面的 jq 输出中打印 Members 和 id 的值:

$ cat test_|jq -r '.[] | select(.name=="AAA") | .'
{
  "name": "AAA",
  "members": 10,
  "profiles": 0,
  "templates": 0,
  "ldapGroups": 0,
  "ldapMembers": 0,
  "id": "20"
}

不幸的是,它仅适用于其中之一:

$ cat test_|jq -r '.[] | select(.name=="AAA") | .members'
10

使用 +" "+ 我收到错误:

$ cat test_|jq -r '.[] | select(.name=="AAA") | .members+" "+.id'
jq: error: number and string cannot be added

我建议使用字符串插值 https://stedolan.github.io/jq/manual/#Stringinterpolation-%5C(foo)。如果需要,它会自动将输入转换为字符串:

jq -r '.[]|select(.name=="AAA")|"\(.members) \(.id)"' file.json
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jq:错误:无法添加数字和字符串 的相关文章

随机推荐