我想从下面的 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(使用前将#替换为@)