AWS CLI - JMESPath 查询以按标签查找 vpc-id

AWS CLI - JMESPath query to find vpc-id by tag

我想列出具有特定标签 (Name=MyVPC) 的 VPC id。

我知道我可以使用 --filter 和 运行:

aws ec2 describe-vpcs --filters Name=tag:Name,Values=MyVPC --query 'Vpcs[].VpcId'

这完全没问题。

有没有一种方法可以在不使用 --filter 而只使用 JMESPath 的情况下实现这一点?

试试这个命令:

aws ec2 describe-vpcs --query 'Vpcs[?contains(Tags[?Key==`Name`].Value[], `MyVPC`) == `true`].[VpcId]' --output text
aws ec2 describe-vpcs --query 'Vpcs[?Tags[?Key==`Name`]|[?Value==`MyVPC`]].VpcId' --output text