【发布时间】:2016-11-26 10:57:55
【问题描述】:
鉴于此 JSON sn-p,我试图找出使用 jq 提取与特定“instance-id”相对应的键的名称。
我正在尝试这个:
jq '.machines | keys as $x | if .[]."instance-id"=="wdc7ae" then <some-code-to-get-the-key> else empty end'
其中 $x 包含所有机器编号。而“wdc7ae”是具体的“instance-id”值
{
"model": {
"name": "maas2",
"controller": "ctr-xenial",
"cloud": "maas",
"version": "2.0.1"
},
"machines": {
"1": {
"dns-name": "10.4.0.181",
"instance-id": "wdc7ae",
"series": "xenial"
},
"2": {
"dns-name": "10.4.0.182",
"instance-id": "7mx74d",
"series": "xenial"
},
"3": {
"dns-name": "10.4.0.183",
"instance-id": "rgn3ca",
"series": "xenial"
},
"4": {
"dns-name": "10.4.0.184",
"instance-id": "kmy4bh",
"series": "xenial"
},
"5": {
"dns-name": "10.4.0.185",
"instance-id": "eb38c7",
"series": "xenial"
}
}
}
非常感谢任何帮助。
【问题讨论】: