如何使用jq或其他工具从JSON输出中提取DBInstanceIdentifier字段
jq提取目标字段的正确方案
你之前执行的jq -r '.[] | .DBSnapshotIdentifier'未生效的核心原因是JSON结构的根节点不是数组,而是包含DBSnapshots数组的对象,直接遍历根对象无法定位到快照列表中的属性。
以下是不同提取需求的对应命令:
仅提取所有
DBInstanceIdentifier字段的纯文本值jq -r '.DBSnapshots[] | .DBInstanceIdentifier'输出示例:
auto-lims automation-lims同时获取
DBSnapshotIdentifier和对应DBInstanceIdentifier的关联关系jq -r '.DBSnapshots[] | "\(.DBSnapshotIdentifier) \(.DBInstanceIdentifier)"'输出示例:
auto-lims-final-snapshot auto-lims automation-lims-before-postgres-12-5 automation-lims筛选出指定
DBInstanceIdentifier对应的完整快照对象
以筛选DBInstanceIdentifier为auto-lims的条目为例:jq '.DBSnapshots[] | select(.DBInstanceIdentifier == "auto-lims")'
内容的提问来源于stack exchange,提问作者Andrew
相关产品推荐
相关产品推荐

