用aws cli枚举aws标签

时间:2014-08-01 10:18:44

标签: json amazon-web-services

我以为我可以在我的AWS机器上添加标签,例如

键:备份 价值:00 04 * * *

然后从我们的管理服务器使用它来在特定时间安排卷快照。到目前为止,我一直在与jmespath的东西挣扎,而我似乎无法理解json路径提取语法:

aws ec2 describe-instances --query 'Reservations[].Instances[].Tags[?Key==`Backup`]'
[
   [],
   [],
   [],
   [],
   [
       {
           "Value": "00 04 * * *",
           "Key": "Backup"
       }
   ],
   [],
   []
]

如果为实例定义了Backup标记,我可以使用一些帮助来确定如何提取以下两个值。

InstanceId,备份密钥的值

1 个答案:

答案 0 :(得分:1)

尝试查询标记,指定您只需要实例的标记,并且您想要字段的值" key"是"备份"。 (以下示例)

aws ec2 describe-tags --query "Tags[*].{Backup:Value,InstanceId:ResourceId}" --filters "Name=resource-type, Values=instance" --filters "Name=key,Values=Backup" --output table 

(此示例中的输出是用于查看结果的表格,但您可以根据需要将其更改为json或文本。)