我有点困惑。我已经尝试过 jmespath,但没有帮助。我需要获得一个包含指定对象的高级对象。在下面的示例中,我们看到了一个关于 HDD 的事实。我需要获取包含指定分区的 HDD 的磁盘名称(或)sdf
,sdg
例如.dm-0
sdf1
我有这个 jmespath 查询:
msg.*.[partitions.sdf1]
但它只是向我展示了里面的一切sdf1
。像这样的过滤器[?partitions=="sdf1"]
在这里不起作用,所以问题是:如何sdf
在我的示例中保留整个对象?
提前致谢!
{
"msg": {
"sdf": {
"partitions": {
"sdf1": {
"holders": [],
"links": {
"ids": [
"17101686F123-part1",
"wwn-0x123456-part1"
]
},
"sectors": "1875380224"
}
},
"removable": "0",
"rotational": "0"
},
"sdg": {
"partitions": {
"sdg1": {
"holders": [],
"links": {
"ids": [
"164414123CEB-part1",
"wwn-0x1233451234831ceb-part1"
]
},
"uuid": "F301-FA7F"
}
},
"removable": "0"
},
"dm-0": {
"holders": [],
"host": "",
"links": {
"ids": [],
"uuids": []
},
"vendor": null,
"virtual": 1
}
}
}