如何查找以name为值的最新RDS快照



我有一个进程,它使用以日期时间戳结束的标准命名约定定期创建快照。例如"update-script-prod-08052021-075622"。在一个单独的过程中,我需要用"update-script- product"这样的名称来标识最近的RDS快照。我一直在尝试使用"aws"one_answers"description -db-snapshot",但它似乎没有通配符搜索功能。有人可以指导我到一系列的命令,可以得到我的最新的快照名称与名称类似的值?

我相信您希望利用AWS CLI命令提供的JMES查询系统。在这种情况下,下面的示例查询将结果限制为包含文本"update-script-prod-"的DBSnapshotIdentifiers,然后按创建日期对这些结果进行反向排序,并返回第一个结果。

aws rds describe-db-snapshots --output json --query="reverse(sort_by(DBSnapshots[?contains(DBSnapshotIdentifier,'update-script-prod-')], &SnapshotCreateTime))[0]

您可以使用以下命令获取最新快照:

aws rds describe-db-snapshots --query="reverse(sort_by(DBSnapshots, &SnapshotCreateTime))[0]"

你应该能够将它与过滤器参数结合起来,使你能够过滤结果。

--filters Name=db-instance-id ,Values=*update-script-prod*